设为首页 加入收藏

TOP

nodeJS之HTTP(四)
2017-10-13 10:50:15 】 浏览:6972
Tags:nodeJS HTTP
弃。

  [注意]发送尾部响应头之前,需先发送 Trailer 响应头,并在值里带上尾部响应头字段的列表

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

  如果尾部响应头字段的名称或值包含无效字符,则抛出 TypeError 错误

【response.end([data][, encoding][, callback])】

data <string> | <Buffer>
encoding <string> 如果指定了 data,则相当于调用 response.write(data, encoding) 之后再调用 response.end(callback)
callback <Function> 如果指定了 callback,则当响应流结束时被调用

  该方法会通知服务器,所有响应头和响应主体都已被发送,即服务器将其视为已完成。 每次响应都必须调用 response.end() 方法

【response.finished】

<boolean>

  返回一个布尔值,表示响应是否已完成。 默认为 false。 执行 response.end() 之后,该值会变为 true

【response.getHeader(name)】

name <string>
返回: <string>

  读取一个已入队列但尚未发送到客户端的响应头

  [注意]名称不区分大小写

var contentType = response.getHeader('content-type');

【response.getHeaderNames()】

  返回响应头名称的数组

response.setHeader('Foo', 'bar');
response.setHeader('Set-Cookie', ['foo=bar', 'bar=baz']);

var headerNames = response.getHeaderNames();
// headerNames === ['foo', 'set-cookie']

【response.getHeaders()】

  返回响应头数组

response.setHeader('Foo', 'bar');
response.setHeader('Set-Cookie', ['foo=bar', 'bar=baz']);

var headers = response.getHeaders();
// headers === { foo: 'bar', 'set-cookie': ['foo=bar', 'bar=baz'] }

【response.hasHeader(name)】

  是否包含当前响应头

var hasContentType = response.hasHeader('content-type');

【response.headersSent】

  返回一个布尔值(只读)。 如果响应头已被发送则为 true,否则为 false

【response.removeHeader(name)】

  从隐式发送的队列中移除一个响应头

response.removeHeader('Content-Encoding');

【response.sendDate】

  当为 true 时,如果响应头里没有日期响应头,则日期响应头会被自动生成并发送。默认为 true。

  该属性只可在测试时被禁用,因为 HTTP 响应需要包含日期响应头

【response.setHeader(name, value)】

name <string>
value <string> | <string[]>

  为一个隐式的响应头设置值。 如果该响应头已存在,则值会被覆盖。 如果要发送多个名称相同的响应头,则使用字符串数组

response.setHeader('Content-Type', 'text/html');
response.setHeader('Set-Cookie', ['type=ninja', 'language=java script']);

  如果响应头字段的名称或值包含无效字符,则抛出 TypeError 错误

  response.setHeader()设置的响应头与response.writeHead()设置的响应头合并,response.writeHead()优先

【response.setTimeout(msecs[, callback])】

msecs <number>
callback <Function>
返回 response

  设置socket的超时时间为msecs。如果提供了回调函数,它会作为监听器被添加到响应对象的'timeout'事件

  如果没有 'timeout' 监听器被添加到请求、响应或服务器,则 socket 会在超时后被销毁。 如果在请求、响应或服务器的 'timeout' 事件上分配了回调函数,则超时的 socket 必须被显式地处理

【response.statusCode】

  当使用隐式的响应头时(没有显式地调用 response.writeHead()),该属性控制响应头刷新时将被发送到客户端的状态码

response.statusCode = 404;

  响应头被发送到客户端后,该属性表示被发出的状态码

【response.statusMessage】

  当使用隐式的响应头时(没有显式地调用 response.writeHead()),该属性控制响应头刷新时将被发送到客户端的状态信息。 如果该值为 undefined,则使用状态码的标准信息

response.statusMessage = 'Not found';

  响应头被发送到客户端后,该属性表示被发出的状态信息

【response.write(chunk[, encoding][, callback])】

chunk <string> | <Buffer>
encoding <string>
callback <Function>
返回: <boolean>

  如果该方法被调用且 response.writeHead() 没有被调用,则它会切换到隐式响应头模式并刷新隐式响应头。

  该方法会发送一块响应主体。 它可被多次调用,以便提供连续的响应主体片段

  chunk 可以是一个字符串或一个 buffer。 如果 chunk 是一个字符串,则第二个参数指定如何将它编码成一个字节流。 encoding 默认为 'utf8'。 当数据块被刷新时,callback 会被调用。

  [注意]这是原始的 HTTP 主体,且与可能被使用的高级主体编码无关

【response.write()】

  首次被调用时,会发送缓冲的响应头信息和响应主体的第一块数据到客户端。 response.

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 4/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇如何通过JS实现简单抖动效果 下一篇如何实现冒泡排序

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目