一、小程序---电影商城---娱乐---电影列表首页
小程序版本主页
https://youzan.github.io/vant-weapp/#/intro
二、小程序---电影商城---娱乐---电影列表
豆瓣网:提供开放接口
接口:
http://api.douban.com/v2/movie/in_theaters 热门电影列表
?apikey=0df993c66c0c636e29ecbb5344252a4a 豆瓣开发者钥匙
四、小程序--电影商城--创建云函数
&start=0&count=10
start 从第几条记录开始
count 本次查询几条内容
三、小程序---电影商城---娱乐---发送请求
小程序端 | 云函数 | |
发送方式 | wx.request({}) | 第三方ajax request |
协议支持 | 只支持https | 根据第三方决定 |
是否备案 | 经过ICP备案 | 可以不备案 |
域名个数限制 | 20个域名 | 无限 |
在cloudfunctions--->右键Node.js云函数
(1)创建云函数movielist1906
(2)在当前云函数安装第三方ajax库
#不同云函数之间第三方库不能共享
(3)右键->movielist1906->打开终端(下面的命令顺序)
npm install -S request #安装依赖库
npm install -S request-promise #ajax库
新建的云函数--->package.json中必须有
"request-promise": "^4.2.5",才算创建成功
(4)创建函数 index.js
作业:调用云函数完成分页电影列表
(1)引入request-promise库
const rp=require("request-promise");
(2)发送请求获取返回结果给调用者
export main=async(event context)=>{
return rp(豆瓣网址).then(res=>{
return res;
})
.catch(err=>{
console.log(err);
})
}
#event 传递参数
var url=`http://http://api.douban.com/v2/movie/in_theaters`;
url+=`?apikey=0df993c66c0c636e29ecbb5344252a4a`
url+=`&start=${event.start}&count=${event.count}`
#count 数据条数 5 4 10
在index.js中编写// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
//1:引入request-promise库
const rp=require("request-promise");
//2:创建url
exports.main=async(event,context)=>{
var url =`http://http://api.douban.com/v2/movie/in_theaters`;
url +=`?apikey=0df993c66c0c636e29ecbb5344252a4a`;
url += `&start=${event.start}`;
url += `&count=${event.count}`;
//3:发送ajax
return rp(url).then(res=>{
return res;
}).catch(err=>{
console.log(err);
})
}
完成之后上传并部署
常见错误
(1)request-promise 没有安装成功
Connot find module 'request-promise'
(2)url拼写错误
(3)没有上传成功,再上传再测
{event:{count:20,start:0}}