我使用Mikeal的请求(https://github.com/mikeal/request)向服务器发出https请求.然而,我一直收到一个授权错误,证书已过期.

request({
        url: 'https://www.domain.com/api/endpoint',
        strictSSL: false
    }, function(error, response, body) {
        if(!error && response.statusCode == 200) {
            res.json(JSON.parse(body));
        } else {
           res.json(response.statusCode, {'error': 'error'})
        }
});

我try 将strictSSL设置为true和false,两者都输出相同的CERT_错误已过期.是什么导致了这个问题,有没有办法在nodejs中修复它?

推荐答案

在文件顶部添加以下内容:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';

DANGEROUS这将在整个 node 上禁用HTTPS/SSL/TLS判断.js环境.请参阅下面使用https代理的解决方案.

Node.js相关问答推荐

Mongoose-不会更新数组中的属性值

Express无法发布

"sh:/usr/local/bin/node:当它存在于文件目录中时未找到

如何使用多个参数完成

Nodejs 从链接数组中获取数据并保存到 mongodb

看起来这段代码try GET 请求发送的值变为空白

图像存储在后端文件夹中,但使用 multer 和 react.js 在前端找不到

访问 Mongoose 查询之外的变量

使用 firebase 函数 api 运行套接字(相同的端口创建问题)

如何在 cypress 测试中进行计算

为什么 req.params.id 返回 undefined未定义?

Node JS:自动 Select `http.get`与`https.get`

在Go中,编写非阻塞代码有意义吗?

NodeJS为exec设置环境变量

安全沙箱并执行用户提交的 JavaScript?

TypeError:winston.Logger 不是带有winston 和morgan 的构造函数

具有多个条件的mongoose 查找

如何为 node.js 服务器分配域名?

如何在 node 中找到引用站点 URL?

使用 Mongoose 进行多对多映射