服务器端怎样发送响应码,Node之HTTP发送服务器端响应流

发送服务器端响应流

在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:用于指定当响应超时时调用的回调函数,该回调函数中不使用任何参数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值