我正在尝试使用 Azure Functions 进行 API 调用。 但我得到以下错误。

{
  "errno": "ENOTFOUND",
  "code": "ENOTFOUND",
  "syscall": "getaddrinfo",
  "hostname": "https://jsonplaceholder.typicode.com",
  "host": "https://jsonplaceholder.typicode.com",
  "port": "80"
}

我的代码

var http = require('http');

module.exports = function (context) {
    context.log('JavaScript HTTP trigger function processed a request.');

    var options = {
        host: 'https://jsonplaceholder.typicode.com',
        port: '80',
        path: '/users',
        method: 'GET'
    };

    // 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();
};

我怎么能解决这个问题?

#1楼 票数:1 已采纳

你犯了几个常见的错误:

  • 您正在为 https URL 使用http模块。
  • 将主机值更改为jsonplaceholder.typicode.com
  • 对于 https 协议端口应该是 443

更改选项如下:

对于http

var options = {
        host: 'jsonplaceholder.typicode.com',
        port: '80',
        path: '/users',
        method: 'GET'
    };

对于 https:

使用https模块发出请求,选项对象应该是这样的

 var options = {
            host: 'jsonplaceholder.typicode.com',
            port: '443',
            path: '/users',
            method: 'GET'
    };

演示: https : //repl.it/repls/RepentantGoldenrodPriority

  ask by Bishan translate from so

未解决问题?本站智能推荐:

2回复

如何从 Azure 函数进行 https 调用?

我正在尝试使用 nodeJS 创建 Azure 函数,但是当我调用 https API 时,我收到一条错误消息。 是否可以从 azure 函数进行 HTTPS 调用? 这是我的代码 我收到一个错误,但我在控制台上没有看到任何错误,如果我评论所有 https 调用,它工作正常,我可以在屏幕上看
1回复

使用 Nodejs 在 Azure Functions 中进行 HTTP Post 调用

我正在尝试使用 nodejs 从 Azure Functions 中进行 HTTP Post 调用。 需要传递的有效负载是 JSON 格式,具有两个属性 title 和 description。 出于某种原因,下面的代码不起作用,我也没有在日志中收到任何错误。 POST 操作在 Postman 休
1回复

有没有办法在nodeJS POST API请求中指定本地文件系统路径,能够使用curl进行api调用,但不能使用nodejs

以下 curl API 成功将本地文件系统中的 .zip 文件部署到 Azure Function APP 中。 curl -X POST -u user123:P@ssword --data-binary @"C:\\Ddrive\\Porject\\deploy-zip\\wb-uc-cod
1回复

azure-functions-cli:func init spits error“没有这样的文件或目录”

我使用下面的URl, https: //github.com/nodesource/distributions安装了7.x NoodeJs 已安装azure-functions-cli,如链接https://blogs.msdn.microsoft.com/appserviceteam/
1回复

Azure 函数、NodeJS 和 Application Insights

我编写了一些简单的函数并启用了Application Insights , 它都显示为已连接,我可以看到这是它的跟踪 http 状态,例如我收到失败的请求计数和服务器响应时间等。 我知道我可以使用以下代码将应用程序洞察添加到节点 但我希望它可以在没有这个的情况下工作,当我使用日志流时,我
1回复

使用“apollo-server-azure-functions”的 Apollo 订阅

我正在使用“apollo-server-azure-functions”npm 包,我们可以使用它来实现 graphql 订阅。 我在 github 中检查了 npm package repos 以上,但我没有找到订阅选项
2回复

azure-storage无法与Web Pack(azure-functions-pack)服务器端一起使用

我使用Node.js提供了一个Azure Function微服务,并且正在使用npm模块azure-storage将文件插入Blob存储中。 在本地运行良好,但是在部署到开发环境时,将执行一个脚本,该脚本执行azure-functions-pack并生成包含服务代码和所有必需的npm模块的
2回复

任何人都可以引导我朝着正确的方向启动这个 Azure 函数,它输出“无法找到模块‘@azure/functions’?

我正在尝试使用 TypeScript 在本地运行 Azure 函数。 我在 TypeScript 方面有相当多的经验,一般在 JS 世界,但在涉及这些消费类型的云服务时就没有那么多了。我正在运行最新版本的核心工具,因此运行func -v返回3.0.3160我尝试重新安装该工具。同样的问题在多台机器和