爱思才会赢
爱思才会赢
  • 发布:2023-04-02 23:00
  • 更新:2023-04-05 21:56
  • 阅读:333

【报Bug】云函数调用ok但是云端调用失败:Error fetching CERT_HAS_EXPIRED:certificate has expired

分类:uniCloud

产品分类: uniCloud/App

操作步骤:

在HbuilderX内置浏览器选本地云函数,正常。内置浏览器选云端云函数,异常。

预期结果:

正常调用proxy得到返回值

实际结果:

异常。显示证书过期,其实没有过期。而且其它网站访问该proxy服务都正常////:22:01:25.229 Error fetching GPT response:Error: [openaiAPI]: CERT_HAS_EXPIRED:certificate has expired, POST https://已注释掉某个网站.com/proxy/proxy.php -1 (connected: true, keepalive socket: false, agent status: {"createSocketCount":2,"createSocketErrorCount":0,"closeSocketCount":1,"errorSocketCount":2,"timeoutSocketCount":0,"requestCount":0,"freeSockets":{},"sockets":{"已注释掉某个网站.com:443:::::::::":1},"requests":{}}, socketHandledRequests: 1,

bug描述:

已经花了五六个小时排除原因,在网上和群里找类似问题,无果,求助!击破。
现象: 在HbuilderX内置浏览器选本地云函数,正常。内置浏览器选云端云函数,异常。显示:22:01:25.229 Error fetching GPT response:Error: [openaiAPI]: CERT_HAS_EXPIRED:certificate has expired, POST https://已注释掉某个网站.com/proxy/proxy.php -1 (connected: true, keepalive socket: false, agent status: {"createSocketCount":2,"createSocketErrorCount":0,"closeSocketCount":1,"errorSocketCount":2,"timeoutSocketCount":0,"requestCount":0,"freeSockets":{},"sockets":{"已注释掉某个网站.com:443:::::::::":1},"requests":{}}, socketHandledRequests: 1, socketHandledResponses: 0)
headers: {}
已排除操作:
1)已全部上传云函数;
2)已仔细看了跨域配置要求,在uniCloud web控制台配置了跨域配置;
3)已确认“已注释掉某个网站.com/proxy/proxy.php”所在服务器证书时间未到期,还有三个月。为排除问题,我又重新更新了证书
4)已“已注释掉某个网站.com/proxy/proxy.php”所在服务器的跨域配置也操作了。
现在彻底没招了。有劳有劳。

2023-04-02 23:00 负责人:无 分享
已邀请:
爱思才会赢

爱思才会赢 (作者)

已经在chatGPT的指导下解决了。问题的确还是在我自己服务器的证书配置上。
是先搜索到了这篇blog,然后通过chatGPT指导,下载新证书,重新配置certbot 完成了。
https://community.letsencrypt.org/t/problem-with-certificate-has-expired/161013/3

爱思才会赢

爱思才会赢 (作者)

在补充一下,看到官方相关文档,看起来很费解,好在有个地方说了,如下修改:

因为let's encrypt根证书过期,nodejs8版本请求使用了let's encrypt证书的网站时会出现 certificate has expired所以需要将云函数升级到nodejs12。相关文档: 云函数通过https访问其他服务器时出现“certificate has expired”

{
****其它代码,主要就是cloudfunction-config那三行:
"extensions": {
"uni-cloud-jql": {}
},
"cloudfunction-config": {
"runtime": "Nodejs12"
}
}

要回复问题请先登录注册