中科研拓提供微信小程序软件开发外包服务,可根据用户需求定制开发各类微信小程序,包括前端小程序应用与小程序服务端软件程序。中科研拓基于十几年的软件研发经验,可以快速开发各类小程序软件。
联系热线:400-0316-532
联系QQ : 45642387
自16年9月22日以来,网络上出现了若干微信小程序的demo,但大部分的demo都是前端居多,很多知识做了简单的API演示,读取的内容大多是直接写在本地js里面,并没有从服务端获取。但我们知道,小程序并非只有前端,后端是必不可少的。
微信对后端提的不多,希望开发者将精力都放在前端些,因为前端才是和用户最直接交互的地方。但是没有后端,就只能是个demo,绝非产品。更何况微信小程序对后端的安全性要求严之又严。
https是比较明显的一个限制,所有待访问的域名必须在微信公众平台mp中做过备案是第二个限制,mp中域名的修改每月仅限三次是第三个限制(一个不小心就发现这个月不能改了,好尴尬。。。)
这里我们根据腾讯云发布的小相册案例的后台来深度分析下,尤其针对初次接触微信小程序的开发者,以下或许会对你有所帮助。因为后台开发涉及的内容太多,神级工程师因为趟过坑现今一看就懂,但是想入门却尚未入门或者想一探究竟者很多却只能看却不会实现。
首先,关于小相册这个项目的源码(含服务端),大家可以从github上下载,
git clone https://github.com/CFETeam/weapp-demo-album.git
其中有三个目录,分别是
-
applet(或app): 「小相册」应用包代码,可直接在微信开发者工具中作为项目打开。
-
server: 搭建的Node服务端代码,作为服务器和app通信,提供 CGI 接口示例,用于拉取图片资源、上传图片、删除图片。这是需要上传到服务器上的
-
assets:这个不用管,里面是演示截图。
这里我们只说server端的配置,
腾讯云官方提供了小程序云端镜像。「小相册」的服务器运行代码和配置已经打包成腾讯云 CVM 镜像存放于服务市场中,可以直接导入该镜像。按照腾讯的说法是“一键部署”好云端。可实际上,哪有一键那么简单。
首先,https://buy.qcloud.com/cvm?marketImgId=371,通过这个网页,我们可以购买一个腾讯云提供的CVM,在第二步“选择镜像”中使用服务市场的“微信小程序示例云端镜像1.1.0”.(注:如果大家在这里找不到,可以在“服务市场”中慢慢找,一定能找到的。)
使用镜像的好处是“懒”,因为server端的代码已经在里面了。我们可以跳过安装配置服务器的繁琐步骤,先练习趟域名、https这些雷。当日,如果各位愿意的话,可以自己从头到尾配置自己的服务器,不用腾讯提供的镜像。
其次,因为在微信小程序中所有的request请求受到严格限制,必须在mp中做备案,否则域名和协议无法请求。简单来说,就是你的域名必须走 https 协议,且在mp中注明。所以我们还需要为我们的域名申请一个证书。
如果没有域名,可以点这里注册:https://www.qcloud.com/product/dm
如果没有证书,可以点击这里免费申请:https://console.qcloud.com/ssl。(我发现我已经成了腾讯云的免费推广了)这里申请的免费证书有效期是一年,对我们来说足够了,是trustAsia颁发的证书(赛门铁克的白金合作伙伴)。
以上两点都有了以后,就是第三步,修改nginx中的部分配置,
如果大家有Linux命令行的基础的话,可以从命令行的界面进入服务器,并对文件进行修改,腾讯云进入服务器的方式是点击下图中的“登录”。这个主机“ins-***ynon”就是我们在本文中第一步购买的CVM名称。
点击登陆后,进入界面如下:
需要大家先输入用户名和密码。用户名和密码在导入小相册镜像时系统会提示你输入,用户名是“root”不能修改,密码是你自己设置的。输入后就可以敲命令行正常操作了。
比如输入cd /etc/nginx/conf.d 就可以进入conf.d这个文件夹操作配置文件。在conf.d目录下使用ls命令可以发现目录下有三个文件(橙色框)。其中,文件www.qcloud.la.conf 就是后续要修改的内容
使用命令 vi www.qcloud.la.conf 可以对文件“www.qcloud.la.conf”进行修改。修改的内容为三块区域,已经用橙色框标出。使用的就是本文中第二步申请的域名,以及证书。
crt和key这两个文件是在SSL证书申请通过之后,在域名管理后台点击“下载”获得。
当然,如果大家觉得对linux命令行不熟悉的话可以使用更简便的方法来完成第三步操作。去下载一个SSHSecureShell,这是一个可以在Windows下登录Linux服务器主机的软件,如下图所示
SSH软件安装成功后,打开。点击左上角“Quick connect”,在弹出的对话框中输入“Host name”(是腾讯云上的公网ip,不是内网),user name是腾讯云默认的“root”,点击connect,输入自己导入镜像时的密码,即可接入。成功连接后的界面如下图,右侧就是我们服务器内部的文件布局了,是不是瞬间觉得人间自有真情在。。。 所有的操作习惯终于又回来了,导入crt和key两个文件是需要用鼠标拖拖就好了,怎一个爽字了得。编辑任何一个js文件,也只需要直接打开就行,这里推荐大家编辑时使用Notepad++,很方便。
OK,以上较为关键的三步终于说完了,希望能给各位想深入了解微信小程序的朋友带来帮助。
关于:中科研拓
深圳市中科研拓科技有限公司专注提供软件外包、app开发、智能硬件开发、O2O电商平台、手机应用程序、大数据系统、物联网项目等开发外包服务,通过IT技术实现创造客户和社会的价值,成为优秀的软件公司,通过客户需求导向、开放式创新、卓越运营管理等战略的实施,全面打造公司的核心竞争力。很好软件外包公司、软件开发公司,联系电话400-0316-532,邮箱sales@zhongkerd.com,网址www.zhongkerd.com