在Azure功能中,如何使用 javascript 调用API。请求是带有header的POST。我试图使用 XMLHttpRequest ,但我得到了异常,因为没有定义XMLHttpRequest。
var client = new XMLHttpRequest();
var authentication = 'Bearer ...'
var url = "http://example.com";
var data = '{.........}';
client.open("POST", url, true);
client.setRequestHeader('Authorization',authentication);
client.setRequestHeader('Content-Type', 'application/json');
client.send(data);
任何其他方法都可以实现这一目标,
答案 0 :(得分:1)
你可以使用内置的var http = require('http');
module.exports= function (context) {
context.log('JavaScript HTTP trigger function processed a request.');
var options = {
host: 'example.com',
port: '80',
path: '/test',
method: 'POST'
};
// Set up the request
var req = http.request(options, (res) => {
var body = "";
res.on("data", (chunk) => {
body += chunk;
});
res.on("end", () => {
context.res = body;
context.done();
});
}).on("error", (error) => {
context.log('error');
context.res = {
status: 500,
body: error
};
context.done();
});
req.end();
};
模块(node.js的标准模块)来实现:
request
如果将其安装到功能应用程序中,您还可以使用{{1}}之类的任何其他npm模块。