微信小程序配置域名的时候提示“校验文件验证失败”
在微信小程序后台配置web-view的业务域名跟扫普通链接二维码打开小程序两项功能时,
一直提示“校验文件验证失败,请下载校验文件,上传到服务器指定的目录”
实际访问校验文件的路径是存在的。找了官方社区也没有找到答案。最后自己还是折腾出来了。
因为我的站点有开启http访问自动跳转到https,于是http访问的时候得到状态码是301而不是200。
明明微信小程序后台配置域名的页面显示的是https,但是微信的服务器访问的居然是http的。。。
...阿里云短信的ASP版
说起阿里的短信接口真是坑爹,最开始叫阿里大鱼,后面改名成阿里大于,然后又并入阿里云平台,然后在云市场那里也有一个,然后又更新了几次,目前最新的情况是阿里云短信(https://dysms.console.aliyun.com/dysms.htm#/account),改来改去接口也是变了好几次,文档还写得不清楚,坑爹中的坑爹。
每次做新项目需要用到短信的,申请新账号就发现老的代码用不了了,又得重新撸。以前阿里大鱼那些接口还简单,最新版的阿里云短信,文档莫名其妙坑了我一整个晚上,终于OK了。下面分享折腾成果(测试过了 IIS下运行是肯定正常的),代码还没有整理,比较乱,需要用到的兄弟凑合着自己改吧。
...小程序微信支付的一些要注意的坑
接到一个朋友的电话,说他小程序的微信支付折腾了一个多星期,一直签名错误。由于当时我自己折腾的时候一直很顺利,所以也没当回事。帮他分析了一下,基本就是他没看懂微信的文档导致签名的算法没写对导致的。确实微信官方的文档写作水平很一般。
现在放一些具体的例子在下面给进来的人参考。
首先统一下单里,签名部分因为微信官方文档没有给一个完整的例子,我朋友就掉坑里了。下面提供一个完整的例子(都是必填的参数,排好序的)也就是官方文档里的stringA,注意这里的appid是小程序的appid不是公众号的appid,不要搞错
...ASP的参数名按ASCII码从小到大排序(字典序)函数
各种各样的API接口签名都是要求对参数名先进行排序的,其他语言还好,自带了排序功能,ASP没有自带排序函数,只能自己定义。
这个函数并不是我写的,而是很多年前从支付宝的DEMO里面挖到的。
参数传数组进去,然后返回值是已经按ASCII码从小到大(也就是ABCDEFG...这样的)排序好的数组。
Function SortPara(sPara) Dim nCount nCount = ubound(sPara) For i = nCount To 0 Step -1 minmax = sPara( 0 ) minmaxSlot = 0 For j = 1 To i mark = (sPara( j ) > minmax) If mark Then minmax = sPara( j ) minmaxSlot = j End If Next If minmaxSlot <> i Then temp = sPara( minmaxSlot ) sPara( minmaxSlot ) = sPara( i ) sPara( i ) = temp End If Next SortPara = sPara end Function
...
破解火车头发布模块密码的思路以及读取器
阿里云RDS的SQLSERVER2012/2016创建数据库的方法
解决宝塔面板使用反向代理时Let's Encrypt免费证书无法自动更新的问题
问题形成原因是因为更新Let's Encrypt免费证书时,Let's Encrypt会访问你的http://域名/.well-known/pki-validation/fileauth.txt这个路径,由于你启用了反向代理,而宝塔又无法往你后端服务器写入文件,导致Let's Encrypt无法访问到你的验证文件自然也就无法更新证书了,解决起来其实很简单,让.well-known目录不要走反向代理就可以了。
登录宝塔面板 → 网站 → 设置 → 配置文件
...微信小程序ASP版无组件加密数据解密算法
微信小程序接口如果涉及敏感数据(例如 wx.getUserInfo的withCredentials 或者 wx.getPhoneNumber),都需要走后端去解密这些敏感数据。
对称解密使用的算法为 AES-128-CBC,数据采用PKCS#7填充。
微信官方提供了多种编程语言的示例代码但是没有ASP的,网上也没有现成的,所以只能自己折腾了,通过整合CryptoJS v3.1.2可以实现AES跟BASE64的解密,从而实现纯ASP版的无组件加密数据解密算法。
...微信小程序rich-text组件在苹果IOS图片显示不了
由于有一些文章是从公众号那边复制过来的,公众号后台会尝试把图片转换成webp格式。
作为安卓用户,webp在安卓上看起来是正常的。加上又是个人开发者,没有条件去做各种测试。普通用户一般也不太会挑这些问题会反馈的就更少了。
最后还是经过了很久自己偶然在一个朋友的iPhone手机上发现的问题。
微信小程序的文档里并没有注明这些兼容性的问题。真是坑。
...微信小程序unionid有时候获取得到有时候获取不到undefined
在你认证了开放平台以后,把公众号跟小程序都绑定上。
这里有一个大坑,就是用户必须先关注你了的公众号,你在小程序那边才能在wx.login获取到unionid。否则就没有返回unionid字段。
作为个人开发者,肯定早早就关注了自己的公众号,所以自己的账号在小程序那边是正常的。
但是其他用户不是啊,有很多是从附近小程序之类的入口来的。获取不到他们的unionid。
...