微信小程序云函数是一个好东西,至关于微信为咱们提供了一个能够跑node.js的服务器,而且能够外部经过API的方式调用云函数,不过微信的文档一贯写的不明不白,初学的时候踩了很多坑,在这里记录下来。
一、建立微信云函数
在微信开发者工具工程文件列表最顶端的“cloudfunctions”右键“新建Node.js云函数”node
这时候建立的云函数是在本地目录下没法运行的,运行须上传到服务器,在建立的云函数名称上右键会出现上传并部署菜单项:
这里的“上传并部署:全部文件” 和 “上传并部署:云端安装依赖(不上传node_modules)”是什么意思呢?大多数状况下,咱们编写和运行node程序,须要经过npm install安装各类库,npm install 会生成node_modules目录并安装相应的依赖库。若是咱们的云函数没有使用到任何依赖库,咱们只须选择“上传并部署:云端安装依赖(不上传node_modules)”就能够了,云服务器会自动安装惟一的依赖“wx-server-sdk”;若是咱们的云函数安装了其它库,则须要手动安装wx-server-sdk依赖:npm
npm install wx-server-sdk --production`
而后选择“上传并部署:全部文件” 便可。(我用的是:小程序
npm install --save wx-server-sdk@latest
若是不加@latest会报错)微信小程序
二、云函数安装依赖
在云函数名称上右键选择“在外部终端窗口中打开”:
而后npm install xxxx 。api
三、云函数的查看
部署好的云函数能够经过“云开发” - “云函数”来进行查看:服务器
四、微信小程序调用云函数微信
wx.cloud.callFunction({ name: 'add', data: { a: 12, b: 19 } }).then(console.log)
五、外部http api调用云函数微信开发
https://api.weixin.qq.com/tcb/invokecloudfunction?access_token=ACCESS_TOKEN&env=ENV&name=functionName
六、注意事项:
在云函数中使用其它云函数时,无需wx.cloud.xxx,直接cloud.xxx便可函数