错误截图:
云函数movielist中index.js代码:
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV}) // 使用当前云环境
const axios = require('axios')
// 云函数入口函数
exports.main = async (event, context) => {
try {
const {
data
} = await axios({
url: `https://frodo.douban.com/api/v2/subject_collection/movie_showing/items?start=${event.start}&count=${event.count}&apiKey=054022eaeae0b00e0fc068c0c0a2102a`,
method: 'get',
headers: {
"Host": "frodo.douban.com",
"Connection": "keep-alive",
"content-type": "application/json",
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.2(0x18000236) NetType/WIFI Language/zh_CN',
'Referer': 'https://servicewechat.com/wx2f9b06c1de1ccfca/81/page-frame.html'
}
})
return data
} catch (e) {
console.log('捕获异常了.')
console.log(e)
}
}
课程接口是没有问题的。云函数应该暂不支持import的方式。可以换一个axios的版本试试,降一下版本。
换个API重新使用request方法可以,代码如下:
return rp('https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=count=${event.count}&page_start=${event.start}')
.then(res=>{
console.log(res);
return res;
}).catch(err=>{
console.log('出错了:',err);
})
感觉是不是那个接口不能用了,还是我axios哪写错了,请老师指正一下.
这个问题解决了,movielist云函数中index.js 把require改为import即可(应该是这样的)
const axios = import('axios')
,但是一直获取数据 result一直是null,然后报错