O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
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(34...
Escrevendo no corpo da resposta
page.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. re...
Encerrando a resposta
page.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. res.write(
5...
Retornando um JSON
Tratando a requisição
http.js
1. var http = require('http');
2.
3. http.createServer(function (req, res) {
4. }).listen(34...
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14...
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14...
Adicionando cabeçalhos na resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo:...
Escrevendo no corpo da resposta
http.js
1. var http = require('http');
2.
3. var operadoras = [
4. {nome: "Oi", codigo: 14...
Estruturando um roteador de requisições
Rodrigo Branas
Agile Code: http://www.agilecode.com.br
Twitter: @rodrigobranas
SlideShare: http://www.slideshare.com/rodri...
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Próximos SlideShares
Carregando em…5
×

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

7.085 visualizações

Publicada em

No sétimo episódio da série sobre Node.js vamos conhecer um dos core modules mais importantes da plataforma, responsável por implementar o protocolo HTTP.

Vamos criar um roteador de requisições, implementando o back-end utilizado na série sobre AngularJS.

https://youtu.be/Pp3OCaOCeWk

Publicada em: Tecnologia
  • Seja o primeiro a comentar

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

  1. 1. Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br Core Modules - http Parte 1
  2. 2. Importando o módulo http page.js 1. var http = require('http');
  3. 3. Criando o servidor page.js 1. var http = require('http'); 2. 3. http.createServer();
  4. 4. Escutando na porta 3412 page.js 1. var http = require('http'); 2. 3. http.createServer().listen(3412);
  5. 5. Retornando HTML
  6. 6. Tratando a requisição page.js 1. var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. }).listen(3412);
  7. 7. 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);
  8. 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);
  9. 9. Retornando um JSON
  10. 10. Tratando a requisição http.js 1. var http = require('http'); 2. 3. http.createServer(function (req, res) { 4. }).listen(3412);
  11. 11. 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);
  12. 12. 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);
  13. 13. 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);
  14. 14. 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);
  15. 15. Estruturando um roteador de requisições
  16. 16. 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

×