记录下云函数访问第三方服务器报错的解决办法
1.报以下错误大概率是因为got版本问题
我是直接npm install的,got版本是10.x
{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"The \"original\" argument must be of type function"}
需要使用低版本安装,博主指定了9.3.0版本后不再报此错误。
2.上述错误修复后报了别的错误。
{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"stringify response to json failed: Converting circular structure to JSON"}
此时需要进行以下修改
- 确认云函数返回类型
let res = await got('http://xxx', {
method: 'get',
headers: {
'Content-Type': 'application/json',
},
})
return res.body
- 页面js云函数调用返回结果使用JSON.parse
wx.cloud
.callFunction({
name: 'xx',
data: {}
})
.then(res => {
let rs = JSON.parse(res.result)
})