我希望在流模式下为node.js使用指针模块,类似于针头文档中的这个示例:
var stream = needle.get('http://www.as35662.net/100.log');
stream.on('readable', function() {
var chunk;
while (chunk = this.read()) {
console.log('got data: ', chunk);
}
});这允许我从流中读取响应体。
如何访问响应头?
发布于 2016-01-27 21:36:13
从读取源,针发出两个事件,header和headers。
只对标题感兴趣:
var stream = needle.get(someURL);
stream.on('headers', function(headers) {
// do something with the headers
});或状态代码和标头:
stream.on('header', function(statusCode, headers) {
if (statusCode != 200) {
// scream and panic
}
});发布于 2016-01-17 22:28:09
如果需要,可以在流启动之前读取标头。
var needle = require('needle');
var url = 'http://www.stackoverflow.com';
needle.head(url, {method: 'HEAD'}, function (err, response) {
if (!err && response.statusCode == 200) {
console.log((JSON.stringify(response.headers)));
}
});或应要求
var request = require('request');
var url = 'http://www.stackoverflow.com';
request(url, {method: 'HEAD'}, function (err, response) {
if (!err && response.statusCode == 200) {
console.log((JSON.stringify(response.headers)));
}
});否则,您可以在流后阅读它。
var needle = require('needle');
var url = 'http://www.stackoverflow.com';
var stream = needle.get(url, function (err, response) {
if (!err && response.statusCode == 200)
console.log((JSON.stringify(response.headers)));
});但这也适用于请求。
var request = require('request');
var url = 'http://www.stackoverflow.com';
var stream = request.get(url, function (err, response) {
if (!err && response.statusCode == 200)
console.log((JSON.stringify(response.headers)));
});https://stackoverflow.com/questions/31649901
复制相似问题