【发布时间】:2017-11-20 04:30:12
【问题描述】:
我是 Node.Js 的新手,我写了两个方法 post 和 get。首先,我希望帖子看起来像 get 请求(异步函数),所以我可以从不同的 js 文件中导出它,但我不确定它现在是否是异步的。其次,我希望 get 请求也能够发送带有 url 的 cookie。
这里是场景: 1-发送发布请求并设置cookie。服务器将引导我到另一个位置。 2- 获取位置并发送获取请求并包含 cookie。
这是我的 POST 代码:
request.post({
headers: { 'content-type': 'application/x-www-form-urlencoded' },
url: 'http://example/login',
body: 'mes=heydude',
followRedirect: true,
form: {
username: 'usr',
password: 'pass'
}
}, function (error, response, body) {
if (error) {
console.log(error)
}
var setCookie = response.headers['set-cookie']
console.log('login success')
console.log(body)
})
这个方法很好用,但是如何让它成为一个异步函数呢?像下面的获取请求?还有如何让get请求返回cookie和html?
function fetch (url, callback) {
return new Promise(function (resolve, reject) {
request(url, function (error, response, html) {
if (error) {
return reject(error)
}
if (response.statusCode !== 200) {
return reject(new Error('error code'))
}
return resolve(html)
})
})
}
如果有可以在 NPM 上执行此操作的模块,请告诉我,谢谢。 帮助新手并获得奖杯!
【问题讨论】:
标签: javascript node.js asynchronous cookies