最近帮人家做一个微信小程序,刚好想熟悉一下。由于牵扯到多用户使用系统,以及数据共享,所以自然架构选择了,客户端和服务器的方式。

后台服务器是windows server,后台程序是.Net  WebApi,跑在IIS下面,因为不想系统太重,数据量不大,所以选择了xml 作为数据库

客户端,服务器架构的微信小程序坑如下

第一坑:(五项条件请具备)

1、一个已备案的域名(二级域名可以的),不是localhost、也不是127.0.0.1,域名不能加端口 (所以不要梦想可以搭在局域网里使用了,那是不可能的

2、加ssl证书,也就是https://~~~

4、HTTPS 服务器的 TLS 版本支持1.2及以下版本,一般就是1.0、1.1、1.2要同时支持这三个版本,一个也不能少,要不然就会出现下面这种情况

5、微信小程序后台加上合法域名设置(一个月内改的次数是有限的,且行且珍惜)

文章请参考: https://blog.csdn.net/abc123434/article/details/76570111

第二坑:(申请免费CA证书)

网上有文章说可以在下面网站申请免费证书,然而我申请了,感觉格式不对(后缀名)

申请证书

https://freessl.org/

后来还好我有一台腾讯云服务器,在腾讯云服务器管理登录之后,可以申请免费的证书。最终生成证书是一个压缩包,各种服务器都有(很好很强大,格式也对)

IIS下的

我参考的的下面这篇文章

证书安装指引(腾讯云)

http://www.mamicode.com/info-detail-1991699.html

还有另外一篇

配置IIS 证书  请参考:

https://www.cnblogs.com/dudu/p/iis_https_ca.html?utm_source=tuicool&utm_medium=referral

第三坑:(配置访问权限

记得要在微信公众号里配置小程序可以访问的,合法域名,如下图

第四坑:(系统名称不要有 敏感字眼)

什么互动答题啥的 都是封杀对象。还有第一名字记得想好了,因为以后小程序改名都是要 收费的

第五坑:(小程序是不支持退出的!!!)

不要天真的以为点击小程序右上角的小叉叉可以退出程序,不是的!!! 它还在后台运行!!!

下次进去还是上次关闭时的页面。

而且小程序现在还没有直接退出的API !!! 巨坑!!!

第六坑:(有些功能在编译器里是调试不了的

比方有上交的叉叉点击,你想测试退出功能或事件。

实际上出来的是文章搜索界面。

第七坑:(发布流程

1.先要提交代码审核

2.审核一般一到两个小时(应该是人工手动测试的,注意如果系统需要密码登录的话,要提交审核的时候附加 用户名,密码信息,我就因为这个原因被审核不过~~ 再提交一把,2小时时间过去了。。。。。。)

3.审核完了,就可以点击发布来发布你的小程序了。(需要配置小程序的进入主页面)

还有一些坑,想到了再添加吧。

其他的整体用起来还行:)

下面是微信小程序开发会用到的一些功能参考文档

微信小程序端

微信小程序:如何利用navigateBack退出小程序

https://www.imooc.com/article/43682

小程序退出后仍在后台运行,

http://www.wxapp-union.com/thread-3279-1-1.html

微信小程序退出重启

https://blog.csdn.net/u014570569/article/details/77478761?utm_medium=referral

【总结】微信小程序 - 用户授权时被拒绝的解决办法(授权失败场景处理)

From <https://blog.csdn.net/sinat_22014829/article/details/77719663>

添加图片

https://developers.weixin.qq.com/miniprogram/dev/component/image.html?t=1476197485892

微信小程序 延时执行 定时执行

setTimeout(function () {

//要延时执行的代码

}, 1000) //延迟时间 这里是1秒

微信小程序页面跳转三种方式

https://blog.csdn.net/zgmu/article/details/72123329

Picker (下拉选择)

从底部弹起的滚动选择器,现支持五种选择器,通过mode来区分,分别是普通选择器,多列选择器,时间选择器,日期选择器,省市区选择器,默认是普通选择器。

https://developers.weixin.qq.com/miniprogram/dev/component/picker.html

UI 布局

https://www.jb51.net/article/99130.htm

微信获取登录用户信息

https://blog.csdn.net/YanzYan/article/details/76854177

js取值

https://www.cnblogs.com/LoveQin/p/7153427.html

http://www.51xuediannao.com/xiaochengxu/xiaochengxu-chuanzhi.html

页面间 传值 取值

https://www.jianshu.com/p/b2d912920a6a

微信小程序六(数据请求 表单的创建 提交 与接收)

https://blog.csdn.net/wujiangwei567/article/details/52795656

Radio button (单选按钮)

https://blog.csdn.net/u014360817/article/details/52668808

页面跳转

https://www.cnblogs.com/yaoyuqian/p/7967472.html

 服务器端

路由设置(WebApi)

https://www.cnblogs.com/landeanfen/p/5501490.html

提高生产性工具(四) - XML数据库的尝试,

https://www.cnblogs.com/TextEditor/p/4195361.html

c# webapi POST 参数解决方法

https://blog.csdn.net/wyqlxy/article/details/49303345

微信小程序开发 (资料汇总,谁还没被坑过?希望助你绕过一些坑)的更多相关文章

  1. 微信小程序开发资料汇总

    >> 微信小程序开发工具下载 社区推荐: >>蜂鸟-微信小程序开发者社区>> 很快-微信小程序开发者社区 博文推荐: >> 微信小程序开源Demo精选& ...

  2. 微信小程序开发参考资料汇总

    不错的微信小程序入门教程:微信小程序入门二: 条件.遍历.网络请求.获取本地图片http://blog.csdn.net/lecepin/article/details/54016701 微信小程序入 ...

  3. 微信小程序开发问题汇总

    前言 经过将近一个多月的开发,我们团队开发的微信小程序 "出发吧一起" 终于开发完成,现在的线上版本为 2.2.4-beta 版 本文档主要介绍该小程序在开发中所用到的技术,已经在 ...

  4. 微信小程序开发资料

      微信开放平台:主要面向App开发者.通常是拥有成熟的应用程序后,通过开放平台将内容分享到朋友圈或发送给某个微信好友/群.例如QQ音乐分享,美图秀秀修改过的照片直接发朋友圈或聊天. 微信公众平台:强 ...

  5. 微信小程序开发资源汇总 💯

    目录 官方文档 工具 插件 讨论 教程 视频教程 文章 代码 轮子 置顶 WePY:组件化的小程序开发框架 

  6. [辅助软件] 微信小程序开发资源汇总 接入指南

    https://github.com/justjavac/awesome-wechat-weapp https://github.com/justjavac/awesome-wechat-weapp ...

  7. 微信小程序--相关资料

    微信小程序Demo https://github.com/zce/weapp­-demojustjavac/awesome­wechat­weapp: 微信小程序开发资源汇总 https://gith ...

  8. 微信小程序开发工具使用与设计规范(二)

    [未经作者本人同意,请勿以任何形式转载] 上一篇文章主要分析了微信小程序应用场景和优劣势.本篇你可以学习到: 如何使用小程序开发工具写一个Hello World 微信小程序设计规范 微信小程序项目结构 ...

  9. 剖析简易计算器带你入门微信小程序开发

    写在前面,但是重点在后面 这是教程,也不是教程. 可以先看Demo的操作动图,看看是个什么玩意儿,GitHub地址(https://github.com/dunizb/wxapp-sCalc) 自从微 ...

随机推荐

  1. 使用LR编写下载类脚本

    如何下载并保存文件到本地,实现文件下载的脚本制作.以下是本人测试某系统总结整理的脚本,仅供参考. #include "lrs.h" Action() { // 示例一: //第一种 ...

  2. 【Recorder.js+百度语音识别】全栈方案技术细节

    项目中需要利用百度语音接口在Web端实现语音识别功能,采用了这样的技术方案,但实现时遇到了很多问题,发现网上大部分文章都只是在详解官方提供的example示例,对实际开发没有提供什么有价值的建议,而r ...

  3. mac终端调用编辑器打开文件

    1.调用atom编辑器,前提是编辑器打开, cd+filename 2 .VScode里面: 调用终端:ctrl + `(esc健下面那个) 安装:shift + command+ p 安装如下插件 ...

  4. es简单打造站内搜索

    最近挺忙的,在外出差,又同时干两个项目.白天一个晚上一个,特别是白天做的项目,马上就要上线了,在客户这里 三天两头开会,问题很多真的很想好好静下来怼代码,半夜做梦都能fix bugs~ 和客户交流真的 ...

  5. Django学习之五:Django 之 注意事项及汇总

    目录 Django 之 注意事项及汇总 全局 settings model模块-模型模块 URLs模块 Templates System 模版模块 View/HttpRequest/HttpRespo ...

  6. z-tree 回显所有选中的id

    //回显选择的checkbox函数 function treeHxIdFun(obj) { var objTree = $.fn.zTree.init($("#demo"), se ...

  7. HTML和CSS前端教程05-CSS盒模型

    目录 1. CSS盒模型 1.1 元素的尺寸 1.2. 元素内边距 padding 1.3. 元素外边距 margin 1.4. 处理溢出overflow 1.5. 元素的可见性Visibility ...

  8. angular打包后路由和文件路径不对

    base href换成如下script标签 <!-- <base href="/"> --> <script> document.write(' ...

  9. React Native基础&入门教程:调试React Native应用的一小步

    React Native(以下简称RN)为传统前端开发者打开了一扇新的大门.其中,使用浏览器的调试工具去Debug移动端的代码,无疑是最吸引开发人员的特性之一. 试想一下,当你在手机屏幕按下一个按钮, ...

  10. 自定义一个全屏的AlertDialog。

    ........... final MyDialog dialog = new MyDialog(this); LayoutInflater inflater = getLayoutInflater( ...