利用coding.net搭建小程序的合法request域名
问题由来
由于微信小程序的网络请求不能通过XMLHTTPRequest
对象或是通常的一些封装好的网络请求库(如axios
,fetch
,jquery
等等),只能使用微信小程序运行环境提供的wx.request()
方法进行网络请求;然而该方法只能接受https
协议的域名作为合法请求域名,所以首先必须要有SSL
证书以及可以配置SSL
证书的主机。
所以问题来了,阿里云所有的虚拟主机都不能对服务器端配置进行修改,所以即便申请到了SSL
密钥也没法进行配置,因此只能间接配置;
解决方案一:CDN
从网上搜了很多答案,几乎都提到了直接利用CDN加速服务,将流量转换成https
,手动配置好申请的SSL
证书即可。
然而,我在腾讯云上配置好CDN和SSL
证书后,使用https
对域名进行访问会报错,所以也不知道哪一步弄错了,心累……
解决方案二:coding.net
突然想到github
提供了一个支持https
访问的个人域名https://username.github.io
,然而这只是静态页面,无法对api请求做出反应。
不过,好在国内也有一个不错的git
代码托管网站——https://coding.net/,不仅支持静态page,而且前不久还开放了动态page(支持PHP),而且默认提供https
支持,简直太慷慨了……、
coding.net的动态page
直接对某个git
项目设置为动态page后,就能得到一个随机分配的https
域名,由于被滥用,微信貌似对这类域名进行了屏蔽(果然很多人早就开始利用这个了),不过好在还可以进行自定义域名绑定,用自己备案好的域名绑定就可以了。
真是帮了大忙,把php文件上传进去就可以在微信小程序进行API访问了!
后话
所以还是要好好支持一下coding.net
,功能确实强大;除了动态page,webIDE也是很不错的!