我正在尝试使用框API和request module
上传图片。我没有遇到任何问题,尝试了提供的curl示例。
我有一个像这样的设置
的请求var request = require("request");
var fs = require("fs");
var path = require("path");
request({
url: "https://api.box.com/2.0/files/content",
method: "POST",
form: {
filename: fs.createReadStream(path.join(__dirname, "midguts.jpg")),
folder_id: "0"
},
headers: {
api_key: "<API_KEY>",
auth_token: "<AUTH_TOKEN>"
}
}, function (error, response, body) {
console.log(error);
console.log(body);
});
当我到达标题部分时出现问题。 box API
调用标题字符串
"Authorization: BoxAuth api_key=API_KEY&auth_token=AUTH_TOKEN"
但我使用请求模块我只能发送一个键值对的对象。我还查看了节点http.request
的文档,发现它有同样的问题。
所以问题是,为什么API不遵循标准密钥对格式,如何发送有效的POST请求?
答案 0 :(得分:2)
Authorization
是HTTP标头的名称(see also)。这可能会更好:
headers: {
Authorization: "BoxAuth api_key=API_KEY&auth_token=AUTH_TOKEN"
}