微信小程序开发填坑指南V1
近期用了一星期的时间,开发了一个小程序。小程序名称是:小特Jarvis,取自钢铁侠的管家。
后台采用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不匹配。继续分析,
我在申请证书时,我申请的域名是一级域名,而小程序用的是我的二级域名,这就是差别。
难道一级域名有个证书后,不能被二级域用?
答案是的
在申请证书时,有个通配符的名词,意思就是如果支持通配符,就可以一级域名只申请一个即可,二级域名可以不申请。不支持通配符的话,二级域名就要再申请一个。
因为我申请的是阿里云免费证书,所以不支持通配符,因此才报上面的那个错误
后来,我给小程序用到的二级域名再申请一个证书,绑定好就可以了。最后一个坑也顺利解决
这里要说下,阿里云的免费证书是可以申请多个的,可以被微信小程序使用
好了,我在开发和部署的时候,遇到了上面这些问题,留坑纪念
这是我的小程序,欢迎关注
微信小程序开发填坑指南V1的更多相关文章
- 微信小程序开发填坑
1.模拟器和真机的差异 在开发的过程中,在模拟器上表现得好好的,在真机上却出问题的例子数不胜数.譬如动画的使用,cover-view上面使用定位,在模拟器好好的,在真机却错乱等等等等.造成这些错乱主要 ...
- 微信小程序开发常见坑
前段时间稍微涉猎了微信小程序开发,踩了一些坑,在此总结出来,希望能为小伙伴们提供一点帮助. 页面跳转 对于页面跳转,可能习惯性想到wx.navigateTo,但是在跳转到目标页面是一个tab时,此接口 ...
- 微信小程序t填坑之旅一(接入)
一.小程序简介 小程序是什么? 首先"程序"这两个字我们不陌生.看看你手机上的各个软件,那就是程序.平时的程序是直接跑在我们原生的操作系统上面的.小程序是间接跑在原生系统上的.因为 ...
- 微信小程序开发踩坑记
前言 微信小程序自去年公测以来,我司也申请了一个帐号开发,春节前后开始开发,现在终于告一个段落了.谨以此文记录下踩过的坑. 坑1:scroll-view与onPullDownRefresh冲突 由于有 ...
- 微信小程序开发踩坑日记
2017.12.29 踩坑记录 引用图片名称不要使用中文,尽量使用中文命名,IDE中图片显示无异样,手机上图片可能出现不显示的情况. 2018.1.5 踩坑记录 微信小程序设置元素满屏,横向直接w ...
- 微信小程序开发踩坑与总结 -
原文链接:https://segmentfault.com/a/1190000008516296 前段时间把公司小程序项目开发完成了,所以来写写自己开发过程中碰到的问题和解决方法,以及用到的提高效率的 ...
- 微信小程序开发-踩坑
异步请求处理 详情描述: 微信小程序的wx.request({})请求时异步处理,以下代码 wx.reuest({ url:"https://XXXA", method:" ...
- 【微信小程序】踩坑指南(持续更新)
前言 说明: 基于mpvue框架:mpvue官方文档 语法同vue框架:vue官方文档 小程序中会有一些坑点,这里会就工作中遇到的坑一一列举出来 无说明时请直接看代码注释 v-show无法使用在小程序 ...
- 踩一踩微信小程序开发的坑---tabBar
最近忙于开发视频直播的项目,小程序学习也放置了两三个星期了,web开发者工具更新到新版,发现上个版本做的demo不显示了
随机推荐
- java中打开文件流后要关闭后重新打开
记录错误,打开文件流一定要关闭并重新打开文件流,不然取的文件内容永远是第一次取的文件内容: /** * 读取配置文件 */ private Properties readProperties() { ...
- 面试题fugui02
一.概念题 1.描述对super.pass.yield.lambda关键字修饰的理解 2.大致描述一下python GIL的机制,以及python中多线程和多进程的区别 GIL全局解释器锁,是pyth ...
- 读《31天学会CRM项目开发》记录3 - CRM解决方案
一. 二.CRM系统设计方案 CRM技术部分设计方案主要包括:服务器端设计方案.客户端设计方案.数据库设计方案.应用系统框架设计方案. 1.服务器端设计方案 配备平台:IIS7和SQL Server2 ...
- JS 私有变量
严格来讲,JS之中没有私有成员的概念:所以对象属性都是公有的.不过,倒是有一个私有变量的概念. 任何在函数中定义的变量,都可以认为是私有变量,因为不能在函数的外部访问这些变量. 私有变量包括函数的参数 ...
- Java中Iterator(迭代器)实现原理
在Java中遍历List时会用到Java提供的Iterator,Iterator十分好用,原因是: 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结 ...
- HDU 2002 计算球体积
题目链接:HDU 2002 Description 根据输入的半径值,计算球的体积. Input 输入数据有多组,每组占一行,每行包括一个实数,表示球的半径. Output 输出对应的球的体积,对于每 ...
- db2性能优化
性能优化概述 DB2 的性能优化可以从三个方面分析:内存,CPU 和 I/O .DB2 性能优化是一件较为复杂的综合性的工作 , 需要对问题的根源作全方位的探索和思考.同时也需要较深厚的数据库管理经验 ...
- Linux学习-实验楼(1)
1.Shell:命令解释器 2.Linux技能树 3.X11:X窗口系统,其本身只是工具包及架构协议,Xorg是x架构规范的一个实现体,是实现了x协议规范的一个提供图形界面的服务器 4.终端本质上是对 ...
- JSP(3)—Cookie和Session
HTTP是一个无状态的协议,web服务器无法分辨出那些请求是同一个浏览器发出的,浏览器每一次请求都是孤立的 即使HTTP1.1支持持续链接,但当用户有一段时间没有请求时,连接也会关闭. 如何实现网上的 ...
- antv g6
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...