【问题标题】:curl with --user option in nodejs在nodejs中使用--user选项卷曲
【发布时间】:2013-10-17 15:03:07
【问题描述】:

我可以在nodejs中抓取一个网页,但我需要先验证自己。在 curl 中,您可以使用 curl --user user:password [url] 执行此操作。

如何在节点中实现相同的结果?

【问题讨论】:

    标签: node.js curl


    【解决方案1】:

    您只需要在您的 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
    });
    

    【讨论】:

      猜你喜欢
      • 2017-03-05
      • 1970-01-01
      • 1970-01-01
      • 2015-03-28
      • 2018-01-17
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      相关资源
      最近更新 更多