使用nodejs中的–user选项curl

我可以在nodejs中抓取一个网页,但是我需要首先对自己进行身份validation。 在curl中,你可以用curl --user user:password [url]来做到这一点curl --user user:password [url]

我怎样才能达到在节点相同的结果?

你只需要添加一个授权头到你的HTTP请求。 Authorization标头应该包含用户名和密码结合一个冒号,然后应该是Base64编码,然后预先与Basic和一个空格。

 var header = 'Basic ' + new Buffer(user + ':' + pass).toString('base64'); 

这是一个涉及GET请求的完整示例。

 var http = require('http'); var user = 'username'; var pass = 'password'; var auth = new Buffer(user + ':' + pass).toString('base64'); var options = { host: 'example.com', port: 80, path: '/path', headers: { 'Authorization': 'Basic ' + auth } }; http.get(options, function(res) { // response is here });