rt
request 可以这样:
request.post({url: 'http://127.0.0.1:3000/users/login', form: {user: 'adminxxxx'}}, function (err, res, body) {
console.log(res.headers['set-cookie']);
});
但是 request-promise 貌似只返回 body 一个参数。 此外,request.post 方法貌似不能被 bluebird.promisify。
我最终目的是得到一个能放在 async/await 里面的方法,如:
async function getCookie(req, res, next) {
let cookie = await request(...);
return ...;
}
除了 async 立即执行函数以外有没有别的方法:
function test() {
return new Promise((resolve, reject) => {
request(url, function() {
resolve(cookie);
});
}).on('error', (error) => {
reject(error);
});
});
};
(async () => {
try {
console.log(await test());
} catch (error) {
console.log(error);
}
})();