最近公司要开发小程序。所以让我花一周时间研究一下。
期间绕了各种弯路。终于是可以正常进入开发和调试。线上测试使用(未发布)
假定你已经下载了微信小程序开发工具,拥有开发身份或者管理员身份(最好是管理员身份,你去申请一个,买个域名啥的。)注册一类的网上都有。域名解析什么的网上都有,没遇到什么困难。
安装ssl证书
jdk keystore形式生成的自签名证书是不行的,就算做好了。上传下载时候(request也获取不到应该)是获取不 到数据的。
证书必须是第三方的颁发的证书,腾讯上可以免费申请的。申请好了之后,server.xml配置主要是这边修改一 下。前提是jdk tomcat的环境变量配置好了,证书就放在conf目录下就好。
tls版本
服务器的jdk版本必须是1.7以上的。微信小程序要求TLS版本要1.0 1.1 1.2都支持。如果jdk版本不够。导致证书安装上去了也没用。有专门检测你域名支持的tls版本的网址域名服务器tls版本支持检测(https://www.ssllabs.com/ssltest/analyze.html)
输入你的域名www.xxxx.com。需要几分钟时间TLS版本都为yes就行了
关于本地测试
当时没注意开发工具有个功能是“开发环境不校验域名”(就是request的访问地址随便是不是https)。。然后就开始绕弯路,(这一部分本身没意义。纯粹是走了弯路,还是记录一下)
微信平台那边配置的request地址必须是域名。当时没有域名,没有外网服务器怎么办。先是用ngrok内网穿透把本地 ip映射到外网域名上,访问域名就是访问本地的项目。后来发现不支持https。。(我是没弄通,感觉应该可以, 还是不死心)。
换个思路,本地ip映射,cmd 到C:\Windows\System32\Drivers\etc\hosts在最后一行加上
前面的ip就是你的ip,后面的就是你想配置的域名www.xxx.com。当然在这边就需要你配置server.xml时候进行 重定向了。这样,你的本机。其实就相当于dns把域名解析成这个ip啦。。
这样的好处就是。代码往服务器上部署的时候就不用改url了。(意义还是不大。。。。)
现在服务器上的主要的几个功能都能正常的用了。。手机客户端也正常用(体验版啊。)
再遇到问题再看吧。。。要爬的坑太多了。。