美文网首页
Node之HTTP发送服务器端响应流

Node之HTTP发送服务器端响应流

作者: 27亿光年中的小小尘埃 | 来源:发表于2020-01-04 22:45 被阅读0次

发送服务器端响应流

在createServer方法的参数值回调函数或服务器对象的request事件函数中的第二个参数值为一个http.ServerResponse对象,可以利用该对象发送服务器端响应流。

response.writeHead(statusCode,[reasonPhrase],[headers])
  • statusCode:用于指定一个三位的HTTP状态码
  • reasonPhrase:参数值为一个字符串,用于指定对于该状态码的描述信息。
  • headers:
    • content-type:用于指定内容类型。
    • location:用于将客户端重定向到另一个URL地址。
    • content-disposition:用于指定一个被下载的文件名。
    • content-length:用于指定服务器端响应内容的字节数。
    • set-cookie:用于在客户端创建一个cookie。
    • content-encoding:用于指定服务器端响应内容的编码方式。
    • ·Cache-Control:用于开启缓存机制。
    • Expires:用于指定缓存过期时间。
    • Etag:用于指定当服务器端响应内容没有变化时不重新下载数据。

发送消息

response.write(chunk,[encoding])
  • chunk:用于指定响应内容,参数值可以为一个Buffer对象或一个字符串。
  • encoding:编码方式

单独设置响应头部

在创建HTTP服务器之后的回调函数里

res.setHeader()

获取响应头部信息

response.getHeader(name)
  • name:响应头字段

删除一个响应字段

response.removeHeader(name)

查看响应头的发送时机

设置响应头之后,我们获取headersSent属性值,如果该属性值为true,则代表响应头已发送完毕,反之亦然

res.headersSent

设置服务器响应头不发送Date字段

在默认情况下,HTTP服务器自动将服务器端当前时间作为响应头中的Date字段值发送给客户端。可以通过将http.ServerResponse对象的sendDate属性值设置为false的方法在响应头中删除Date字段。

res.sendDate=false;

追加响应头信息。

在addTrailers方法中,使用一个参数,参数值为一个对象,其中存放了需要追加的响应头信息。

response.addTrailers(headers)

如果需要使用addTrailers方法,则必须在响应头中添加Trailer字段并且将字段值设置为追加的响应头中所指定的字段名
示例:

response.writeHead(200, {'Content-Type': 'text/plain','Trailer':'Content-MD5'});
response.write('一些数据。');
response.addTrailers({'Content-MD5':'7895bf4b8828b55ceaf47747b4bca667'});
response.end();

结束响应内容的书写

在每次发送响应数据时,必须调用该方法来结束响应。

response.end([chunk],[encoding])
  • chunk:用于指定响应内容,参数值可以为一个Buffer对象或一个字符串。
  • encoding:编码方式

响应超时

response.setTimeout(msecs,[callback])
  • msecs:为一个整数,用于设置超时时间,单位为毫秒。
  • callback:用于指定当响应超时时调用的回调函数,该回调函数中不使用任何参数。

相关文章

  • Node之HTTP发送服务器端响应流

    发送服务器端响应流 在createServer方法的参数值回调函数或服务器对象的request事件函数中的第二个参...

  • Web 基础 4 HTTP 协议入门

    1.1 HTTP 1.2 HTTP协议的版本 HTTP/1.0建立连接客户端发送请求服务器端发送响应关闭连接 HT...

  • HTTP和socket的连接请求的区别

    HTTP连接:http连接就是所谓的短连接,即客户端向服务器端发送一次请求,服务器端响应后连接即会断掉;socke...

  • Servlet和Http响应

    Http协议 请求消息:客户端发送给服务器端的数据数据格式:请求行请求头请求空行请求体 响应消息:服务器端发送给客...

  • Node.js源码解析-HTTP请求响应过程

    Node.js源码解析-HTTP请求响应过程 欢迎来我的博客阅读:《Node.js源码解析-HTTP请求响应过程》...

  • Web服务器主动推送技术

    HTTP协议遵循经典的客户端-服务器模型,客户端发送一个请求,然后等待服务器端的响应,服务器端只能在接收到客户端的...

  • Django-03 请求和响应

    1,请求 请求是指浏览器端通过HTTP协议发送给服务器端的数据 响应是指服务器端接收到请求后做相应处理后再回复给浏...

  • PHP强化之15 - get与post

    一、简介 在HTTP协议下,输入输出的原型其实是HTTP请求与响应,客户端向服务器端发送的数据称之为请求,反之称为...

  • 五、Response

    今日内容 一、HTTP协议: 请求消息:客户端发送给服务器端的数据①请求行②请求头③请求空行④请求体 响应消息:服...

  • http的长连接和短连接

    http协议是基于响应/请求模式的,因此只要服务器端给了响应本次http请求就结束了。 http的长连接和...

网友评论

      本文标题:Node之HTTP发送服务器端响应流

      本文链接:https://www.haomeiwen.com/subject/hnofactx.html