使用Node http发送请求发送身份validation标头

我已经做了一个HTTP客户端使用节点发送一个请求。 但是该服务启用了NTLM身份validation。 如何在post请求中添加我的用户名和密码?

var http=require('http') var options = { host: 'kmserver28', port: 3535, path: '/Alto/Post/PostFetchWS.asmx/FetchPosts', method: 'POST' }; var req = http.request(options, function(res){ console.log('status: ' + res.statusCode); console.log('headers: ' + JSON.stringify(res.headers)); res.setEncoding('utf8'); res.on('data', function(chunk){ console.log("body: " + chunk); }); }); req.on('error', function(e) { console.log('problem with request: ' + e.message); }); // write data to request body req.write('data\n'); req.write('data\n'); req.end(); 

在尝试获得基本授权时遇到此问题。 我能够通过在选项对象中添加一个授权头来得到它的工作。 我是基本的,但NTLM应该是相似的,我相信:

 var api_options = { host: process.env.API_HOST, path: process.env.API_PATH, method: 'POST', headers: { 'Content-Type': 'application/json', 'Content-Length': Buffer.byteLength(body), 'Authorization': 'Basic ' + new Buffer(process.env.API_USERNAME + ':' + process.env.API_PASSWORD).toString('base64') } 

为什么你不试试请求包