微信小程序开发填坑指南V1

近期用了一星期的时间,开发了一个小程序。小程序名称是:小特Jarvis,取自钢铁侠的管家。

 

博客搬家啦,新地址:

https://www.navisoft.com.cn

 

 

后台采用C#编写,WebAPI接口。其实开发时间并不多,小程序本身提供的API,相比公众号的API来说,已经封装了好多东西,我们只负责简单调用即可。而且,提供的开发工具也很方便,开发环境和VisualStudio很类似,包括快捷键(不知道Java的开发员是不是也有这感觉?)

 

好了说重点。今天是个总结,把这一星期开发时遇到的坑整理下,希望其他人遇到时能有个参考。其实开发的坑不多,部署的坑最多。开始咯

 

1,多看文档

多翻翻官方教程是很有必要的。还有官方社区,里面有一些不错的开源小程序源码,可以直接下载参考

 

2,代码布局

前台项目的布局建议使用默认即可,不要自己加些特殊的文件夹。如:Page文件夹里就加页面、Image文件夹里就加图片

 

3,如何联调

后台地址就是我们在小程序后台配置的那个Https地址串。我最开始的做法是把后台程序直接部署至这个地址上,发现提示TSL版本没达到要求什么的。可以在这个页面里,这个选项勾选即可,后台程序通过写日志方式调试程序,感觉不是很方便。有人说可以用远程调试?可以尝试下,但小编没用这个方法。

用的是直接把调用地址改成本地,就是https://localhost开头即可,相当和本机的程序直接调试,方便很多的。

 

基本开发的时候,遇到的就是这些问题,基本都很顺利。

 

 

部署时遇到的问题有点多

1,API地址切换至小程序后台设置的Https地址,发现提示TSL版本过低不支持。这个问题问别人,都说没有出现过。看来是和环境有关,而实际上确实和服务器的环境有关。

我之前是Win2008,网上查资料说这个版本的操作系统只支持TSL低版本,不支持高版本。而小程序要求的是高版本。好像最低是2008R2版本

小编后来换成2012操作系统,此问题解决

 

2,报:fail hostname certificate

这个问题就是一个原因:你申请的证书有问题。要么你是免费的,要么就是不符合小程序的要求。但这都不是事儿,正规渠道购买的证书都没有问题

 

3,uploadFile:fail Error: Hostname/IP doesn't match certificate's altnames: 'Host: xxx1. is not in the cert's altnames: DNS:xxx2, DNS:xxx2'

这个问题不容易遇到,问了几个人都说没遇到过,碰巧又被我遇到了。

从字面含义的解释看,是说我证书绑定的域名B,和我小程序调用的地址A不匹配。继续分析,

我在申请证书时,我申请的域名是一级域名,而小程序用的是我的二级域名,这就是差别。

难道一级域名有个证书后,不能被二级域用?

答案是的

在申请证书时,有个通配符的名词,意思就是如果支持通配符,就可以一级域名只申请一个即可,二级域名可以不申请。不支持通配符的话,二级域名就要再申请一个。

因为我申请的是阿里云免费证书,所以不支持通配符,因此才报上面的那个错误

后来,我给小程序用到的二级域名再申请一个证书,绑定好就可以了。最后一个坑也顺利解决

这里要说下,阿里云的免费证书是可以申请多个的,可以被微信小程序使用

 

好了,我在开发和部署的时候,遇到了上面这些问题,留坑纪念

 

这是我的小程序,欢迎关注

posted @ 2018-08-31 23:32  斜杠青年小Q  阅读(250)  评论(0编辑  收藏  举报