我有如下代码:
var req = require('request'); req.post('someUrl', { form: { username: 'user', password: '', opaque: 'someValue', logintype: '1'}, }, function (e, r, body) { console.log(body); });
如何为此设置标题?我需要用户代理,内容类型以及标题中可能包含的其他内容:
headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36', 'Content-Type' : 'application/x-www-form-urlencoded' };
我已经尝试了多种方式,但是我可以发送标头或表单数据,但均不能发送。
我终于设法做到了。在下面的代码段中回答:
var querystring = require('querystring'); var request = require('request'); var form = { username: 'usr', password: 'pwd', opaque: 'opaque', logintype: '1' }; var formData = querystring.stringify(form); var contentLength = formData.length; request({ headers: { 'Content-Length': contentLength, 'Content-Type': 'application/x-www-form-urlencoded' }, uri: 'http://myUrl', body: formData, method: 'POST' }, function (err, res, body) { //it works! });