nodejs-2.http服务

 一.使用nodejs的http服务:处理 "请求或响应" 数据

要使用 HTTP 服务器与客户端,需要 require('http')

Node.js 中的 HTTP 接口被设计成支持协议的许多特性。 比如,大块编码的消息。 这些接口不缓冲完整的请求或响应,用户能够以流的形式处理数据。//引入 http 模块

//引入内置模块 http 
var http = require('http'); //创建服务 var server = http.createServer(function(req, res){
    //req 是封装好的请求对象
    //res 是封装好的相应对象
    res.end('first http server ok'); 
});

//监听端口
server.listen(8080);

二.http服务:请求报文和响应报文

1.http协议(请求和响应)包括三部分:请求行、请求头、请求体

2.请求报文格式: 客户端向服务器发送的内容

(1) 请求行  GET  /?a=1  HTTP/1.1
(2) 请求头 

    Host: localhost:8080

    User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36 
    ... ...

(3) 请求体

注:get方式会把请求参数拼接在请求行中;

       post方式则把请求参数放在请求体中

3.响应报文 :服务器给客户端浏览器返回的结果

(1) 响应行    HTTP/1.1 200 OK

    注:响应状态码 (状态码很灵活,可以自定义)

      2xx 成功
      3xx 跳转的
      4xx 问题
      5xx 内部错误

//设置响应状态码  
// res.statusCode = 200;
 res.statusCode = 302;

(2)响应头:作用是告知客户端浏览器内容的格式和字符集

res.setHeader('content-type','text/html;charset=utf-8');
//响应头 `content-type` 作用是告知客户端浏览器内容的格式和字符集
//格式:
//text/html
//text/css
//text/plain

(3)响应体

// 响应体 :
//响应数据可以放在res.write(),也可以放在res.end(),但一定要有res.end()否则数据响应完后后还在处理中。

res.write('我是响应体哦!!!');
    
res.end();

                

猜你喜欢

转载自www.cnblogs.com/xzsz/p/9066305.html