相当奇怪的问题:
使用云函数,自己用手机或者模拟器调用,会提示,Converting circular structure to JSON
但是 本地调试 就没有问题了。。。这个是为什么? 数据都是一样的,也不存在传参的问题。
// 云函数入口文件
const cloud = require('wx-server-sdk')
const fs = require('fs');
var qs = require('querystring');
var axios = require('axios')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
const wxContext = cloud.getWXContext()
let style = event.style || ""
let cloudID = event.cloud_id || "cloud://1599531789655.png"
let accessToken = event.access_token || "22276796"
let url = "v1/selfie_anime"
// base64
let param = {}
const imageData = await cloud.downloadFile({
fileID: cloudID,
})
const buffer = imageData.fileContent
param.image = buffer.toString("base64");
if(style != "selfie_anime" ){
url = "v1/style_trans"
param.option = style
}
param.access_token = accessToken
axios.post(url,qs.stringify(
param
))
.then(res=>{
console.log('axios res',res)
return res
}).catch(err=>{
return err
})
/** 小程序调用 **/
wx.cloud.callFunction({
name: 'imageapi',
})
.then(res => {
console.log('res=>',res)
});
试过 更换 axios 版本,无效。测试过 qs.stringfy 正常。应该是axios的问题了 。。。。但是换了 两个 axios 问题依旧。。贴个详细报错信息。莫不是白名单的问题?
此贴终结。的确是 axios 版本问题…… 当然,我换了好几个版本都不行,直到我换了个http框架…… 问题解决。。。