Node.js RESTful API测试,cookie不会被带到下一个请求
当我在测试RESTfulAPI时向localhost发出http请求时,我需要将所有cookie带到下一个请求。 nodejs默认的http模块不支持cookie,但我听说通过在options中设置'jar:true'来支持cookie 默认情况下禁用Cookie(否则,将在 后续请求)。要启用cookies,请将jar设置为true(在 默认值或选项)并安装硬cookie 首先,“安装硬饼干”是什么意思?我trid'npm install tough cookie--save'到我的项目中,然后Node.js RESTful API测试,cookie不会被带到下一个请求,node.js,http,http-headers,request,Node.js,Http,Http Headers,Request,当我在测试RESTfulAPI时向localhost发出http请求时,我需要将所有cookie带到下一个请求。 nodejs默认的http模块不支持cookie,但我听说通过在options中设置'jar:true'来支持cookie 默认情况下禁用Cookie(否则,将在 后续请求)。要启用cookies,请将jar设置为true(在 默认值或选项)并安装硬cookie 首先,“安装硬饼干”是什么意思?我trid'npm install tough cookie--save'到我的项目中,然
tough = require('tough-cookie')
在测试代码时,但它不起作用。我是否必须为某些设置选项分配困难?以下是我向localhost发出http请求的代码:
var get = function(path, paramObj, cb) {
return Promise(function(resolve, reject) {
var options = {
url: 'http://' + hostname + ':' + port + path,
method: 'GET',
qs: paramObj,
headers: {
'Content-Type': 'application/json',
'User-Agent': 'request',
'Cache-Control': 'no-cache'
},
jar: true // even I set true, cookie doesn't carry along to next request
};
request(options, function(err, response, body) {
if (!err && response.statusCode === 200) {
try {
var parsed = JSON.parse(body);
cb(parsed);
} catch (e) {
console.log('get() - Parsing JSON error');
cb(body);
}
}
});
});
};
var post = function(path, paramObj, cb) {
var options = {
url: 'http://' + hostname + ':' + port + path,
method: 'POST',
body: JSON.stringify(paramObj),
headers: {
'Content-Type': 'application/json',
'User-Agent': 'request',
'Cache-Control': 'no-cache'
},
jar: true // doesn't work
};
request(options, function(err, response, body) {
if (!err && response.statusCode == 200) {
// console.log('response is:');
console.log(response.headers);
try {
var parsed = JSON.parse(body);
console.log('parse json good');
cb(parsed);
} catch (e) {
console.log('post() - Parsing JSON error');
cb(body);
}
}
});
};
再说一次,我的目的是
在浏览器中,所有cookie都将被带到下一个请求
我该怎么办?你能在我的代码上面编辑吗?谢谢大家!