Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br
Core Modules - http
Parte 1
Importando o módulo http
page.js
1. var http = require('http');
Criando o servidor
page.js
1. var http = require('http');
2.
3. http.createServer();
Escutando na porta 3412
page.js
1. var http = require('http');
2.
3. http.createServer().listen(3412);
Retornando HTML
Tratando a requisição
page.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. }).listen(3412);
Escrevendo no corpo da resposta
page.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. res.write(
5. '<html>' +
6. '<head>' +
7. '<title>Hello World</title>' +
8. '</head>' +
9. '<body>' +
10. '<h1>Hello World</h1>' +
11. '</body>' +
12. '</html>'
13. );
14. }).listen(3412);
Encerrando a resposta
page.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. res.write(
5. '<html>' +
6. '<head>' +
7. '<title>Hello World</title>' +
8. '</head>' +
9. '<body>' +
10. '<h1>Hello World</h1>' +
11. '</body>' +
12. '</html>'
13. );
14. res.end();
15. }).listen(3412);
Retornando um JSON
Tratando a requisição
http.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. }).listen(3412);
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2},
5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1},
6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3}
7. ];
8.
9. http.createServer(function (req, res) {
10. res.write(JSON.stringify(operadoras));
11. }).listen(3412);
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2},
5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1},
6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3}
7. ];
8.
9. http.createServer(function (req, res) {
10. res.write(JSON.stringify(operadoras));
11. res.end();
12. }).listen(3412);
Adicionando cabeçalhos na resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2},
5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1},
6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3}
7. ];
8.
9. http.createServer(function (req, res) {
10. res.setHeader('Access-Control-Allow-Origin', '*');
11. res.write(JSON.stringify(operadoras));
12. res.end();
13. }).listen(3412);
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2},
5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1},
6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3}
7. ];
8.
9. var contatos = [
10. {id: 1, nome: "Bruno", telefone: "9999-2222", data: new Date(), operadora: operadoras[0]},
11. {id: 2, nome: "Sandra", telefone: "9999-3333", data: new Date(), operadora: operadoras[1]},
12. {id: 3, nome: "Mariana", telefone: "9999-9999", data: new Date(), operadora: operadoras[2]}
13. ];
14.
15. http.createServer(function (req, res) {
16. res.setHeader('Access-Control-Allow-Origin', '*');
17. if (req.url === '/operadoras') res.write(JSON.stringify(operadoras));
18. if (req.url === '/contatos') res.write(JSON.stringify(contatos));
19. res.end();
20. }).listen(3412);
Estruturando um roteador de requisições
Rodrigo Branas
Agile Code: http://www.agilecode.com.br
Twitter: @rodrigobranas
SlideShare: http://www.slideshare.com/rodrigobranas
YouTube: http://www.youtube.com/rodrigobranas
LinkedIn: http://br.linkedin.com/in/rodrigobranas
+Plus: https://plus.google.com/+RodrigoBranas
GitHub: http://www.github.com/rodrigobranas

Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas

  • 1.
    Rodrigo Branas –@rodrigobranas - http://www.agilecode.com.br Core Modules - http Parte 1
  • 2.
    Importando o módulohttp page.js 1. var http = require('http');
  • 3.
    Criando o servidor page.js 1.var http = require('http'); 2. 3. http.createServer();
  • 4.
    Escutando na porta3412 page.js 1. var http = require('http'); 2. 3. http.createServer().listen(3412);
  • 5.
  • 6.
    Tratando a requisição page.js 1.var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. }).listen(3412);
  • 7.
    Escrevendo no corpoda resposta page.js 1. var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. res.write( 5. '<html>' + 6. '<head>' + 7. '<title>Hello World</title>' + 8. '</head>' + 9. '<body>' + 10. '<h1>Hello World</h1>' + 11. '</body>' + 12. '</html>' 13. ); 14. }).listen(3412);
  • 8.
    Encerrando a resposta page.js 1.var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. res.write( 5. '<html>' + 6. '<head>' + 7. '<title>Hello World</title>' + 8. '</head>' + 9. '<body>' + 10. '<h1>Hello World</h1>' + 11. '</body>' + 12. '</html>' 13. ); 14. res.end(); 15. }).listen(3412);
  • 10.
  • 11.
    Tratando a requisição http.js 1.var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. }).listen(3412);
  • 12.
    Escrevendo no corpoda resposta http.js 1. var http = require('http'); 2. 3. var operadoras = [ 4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2}, 5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1}, 6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3} 7. ]; 8. 9. http.createServer(function (req, res) { 10. res.write(JSON.stringify(operadoras)); 11. }).listen(3412);
  • 13.
    Escrevendo no corpoda resposta http.js 1. var http = require('http'); 2. 3. var operadoras = [ 4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2}, 5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1}, 6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3} 7. ]; 8. 9. http.createServer(function (req, res) { 10. res.write(JSON.stringify(operadoras)); 11. res.end(); 12. }).listen(3412);
  • 14.
    Adicionando cabeçalhos naresposta http.js 1. var http = require('http'); 2. 3. var operadoras = [ 4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2}, 5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1}, 6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3} 7. ]; 8. 9. http.createServer(function (req, res) { 10. res.setHeader('Access-Control-Allow-Origin', '*'); 11. res.write(JSON.stringify(operadoras)); 12. res.end(); 13. }).listen(3412);
  • 15.
    Escrevendo no corpoda resposta http.js 1. var http = require('http'); 2. 3. var operadoras = [ 4. {nome: "Oi", codigo: 14, categoria: "Celular", preco: 2}, 5. {nome: "Vivo", codigo: 15, categoria: "Celular", preco: 1}, 6. {nome: "Tim", codigo: 41, categoria: "Celular", preco: 3} 7. ]; 8. 9. var contatos = [ 10. {id: 1, nome: "Bruno", telefone: "9999-2222", data: new Date(), operadora: operadoras[0]}, 11. {id: 2, nome: "Sandra", telefone: "9999-3333", data: new Date(), operadora: operadoras[1]}, 12. {id: 3, nome: "Mariana", telefone: "9999-9999", data: new Date(), operadora: operadoras[2]} 13. ]; 14. 15. http.createServer(function (req, res) { 16. res.setHeader('Access-Control-Allow-Origin', '*'); 17. if (req.url === '/operadoras') res.write(JSON.stringify(operadoras)); 18. if (req.url === '/contatos') res.write(JSON.stringify(contatos)); 19. res.end(); 20. }).listen(3412);
  • 16.
    Estruturando um roteadorde requisições
  • 17.
    Rodrigo Branas Agile Code:http://www.agilecode.com.br Twitter: @rodrigobranas SlideShare: http://www.slideshare.com/rodrigobranas YouTube: http://www.youtube.com/rodrigobranas LinkedIn: http://br.linkedin.com/in/rodrigobranas +Plus: https://plus.google.com/+RodrigoBranas GitHub: http://www.github.com/rodrigobranas