在节点js中使用-u参数在CURL请求中发出GET请求

时间:2018-03-02 12:10:37

标签: node.js curl request

我正在尝试从节点js向外部api发出GET请求并表达js。

我正在使用请求模块发出GET请求 -

在请求的选项中 -

const options = {
    url: 'https://externalP_api_url/api/1/balance',
    method: 'GET',
    headers: {
        'Content-Type': 'application/json'
    }
};

我需要根据api文档中的示例设置-u参数。他们使用curl发出请求

curl -u keyid:keysecret https://externalP_api_url/api/1/balance

问题是我无法在我的请求的选项中设置-u keyid:keysecret我已经尝试将它像查询字符串一样放在标题中但是我得到了401并且根据api的文档意味着keyid: keysecret参数丢失。

我已经尝试了卷曲并且它有效,所以我不是从api的结尾,而不是因为我不会从https doamain发送,因为我会得到403响应。

1 个答案:

答案 0 :(得分:1)

查看https://curl.trillworks.com/#node

将curl转换为node.js时,通常可以很好地指出正确的方向。根据您的curl命令,它建议使用以下代码:



var request = require('request');

var options = {
    url: 'https://externalP_api_url/api/1/balance',
    auth: {
        'user': 'keyid',
        'pass': 'keysecret'
    }
};

function callback(error, response, body) {
    if (!error && response.statusCode == 200) {
        console.log(body);
    }
}

request(options, callback);