企业微信小程序避坑指南,欢迎补充。。。

准备踩坑

公司要开发一个微信小程序给公司内部人员使用,刚好公司有个企业微信号,我登上企业微信号一看,刚好有关联微信小程序的功能。
在这里插入图片描述

我一拍大腿,决定开发个小程序,关联到企业号上用,恩,这个决定是一切坑的开始。

坑一 https

小程序只支持https域名,其实这个也不是坑啦,只是我自己脚滑掉坑里了而已。
在这里插入图片描述
要想配置https,必须先申请证书,由于公司的域名是在阿里云申请的,所以直接在阿里云申请个数字证书。
关于数字证书,这里有一篇非常经典的文章,推荐阅读一下:What is a Digital Signature?

由于公司的一级域名已经有了各种用处,所以我要另外申请一个二级域名,专门用来做小程序的服务器域名。

在域名解析里,新增一条记录,这里我的二级域名叫做:afs
在这里插入图片描述
比如我们公司的一级域名是:abc123.com,那么小程序的二级域名就是afs.abc123.com。
二级域名和公司的外网ip绑定后,然后内网服务器ip再和公司外网ip关联一下就可以啦。

恩,接下去我就要去申请证书啦。

免费证书

进入阿里云的云盾证书购买页面,一看价格,就已经吓尿。。。
在这里插入图片描述
这价格,无论如何是下不去手的啊,幸好有免费的,依次选择单域名—>DV SSL—>免费版,终于看到一个可爱的¥0.00。
在这里插入图片描述

购买后,点击签发,填好资料,在域名那一栏里填上afs.abc123.com。

注意前面不要加www,我第一个证书填了www.afs.abc123.com,结果小程序和服务器怎么也连不通,这个就是我碰到的第一个坑。

后来我又重新申请了一个afs.abc123.com的证书,才解决问题。

申请好证书后,按照说明配置好nginx就行啦,在Nginx或Tengine服务器上安装证书

小程序服务器域名设置

https域名配置好后,需要在小程序的开发—>开发设置—>服务器域名中填上刚刚申请好的域名。
在这里插入图片描述

这样,第一关就算过啦!

坑二 企业微信关联小程序

在使用之前,企业微信必须先关联小程序,在企业微信的应用管理—>小程序—>关联小程序,可以关联小程序。
在这里插入图片描述
但是,关联小程序前必须先发布小程序。
但是,小程序必须先关联了企业微信,才能调用企业微信的API测试!
没测试,怎么敢发布小程序啊?
不发布,测不了啊!

貌似进了一个死循环啊。。。

不管了,先发布再测,怕审核的小哥哥小姐姐不给我通过,我在备注里,特意说明了下。
在这里插入图片描述

结果,不到一个小时,审核就过了,吼吼。

坑三 企业id

小程序发布后,调用获取access_token的接口
在这里插入图片描述

结果,一直出错,“errcode”:40001,“errmsg”:“invalid credential”
查了一下,说是sceret参数出错了
在这里插入图片描述
我比较了半天corpsecret,结果一毛一样啊,哪里错了啊?
在这里插入图片描述
原来不是corpsecret错了,而是corpid填错了,corpid是企业id,不是AgentId。。。在”我的企业“里,有个企业id,填上就好了!
我承认,这个是我粗心了,不怪企业微信。。。

坑四 企业小程序插件和wx.qy.login

我在调用code2Session接口获取用户userid的时候,一直提示"errcode":40029,“errmsg”:“invalid code”
在这里插入图片描述

一查是code不合法
在这里插入图片描述
怎么就不合法呢?

我在网上搜了好久,终于发现,我调的登录接口错了,我一直用wx.login调用,在登录企业微信的时候需要用wx.qy.login接口

还有,在开发者工具调试的时候,需要切换到企业微信小程序模式
在这里插入图片描述

如果没有,需要在设置的模拟器插件里添加:

在这里插入图片描述

改好了以上问题,终于登录成功了!

真不容易啊。。。

坑五 必须用企业微信打开小程序

在微信里,下拉搜索小程序,直接打开小程序是没有用的,小程序必须在企业微信里打开才能正常使用。不过,这也保证了安全性,只有加入了企业微信的人才能正常使用。

后记

由于这个小程序需要上传视频和图片,测试的时候,发现图片上传成功,视频没有上传成功,一查发现报了413 Request Entity Too Large的错误。

这个是nginx的限制,不允许上传过大的文件,那我把它调大就行了。

打开nginx主配置文件nginx.conf,一般在/usr/local/nginx/conf/nginx.conf这个位置,找到http{}段并添加以下内容:
client_max_body_size 100m;
然后重启nginx问题解决。

我这一路走下来,碰到了这么多坑,花了很长时间去填,所以特意记录一下,给大家做个参考。
如果大家还遇到了其他的坑,欢迎在留言里补充,也许能为其他人节省不少踩坑时间呢。









在这里插入图片描述

©️2020 CSDN 皮肤主题: 黑客帝国 设计师:上身试试 返回首页