杰者的备忘录

一个微信小程序获取二维码接口ASP的小小坑

好吧,这个小坑确实坑了我大半个小时。这严格来算不属于微信官方的问题,算我自己习惯性的问题。记录一下,不知道往后有没有其他ASPER犯了跟我一样的错误呢。


情况大概是这样的,我需要获取微信小程序的小程序码,微信官方提供接口了。于是我照着文档去请求。基本上大多写ASP的请求函数是类似这样的

Function PostHttpPage(HttpUrl,PostData)
	Dim Http
	Set Http=server.createobject("WinHttp.WinHttpRequest.5.1")'Msxml2.ServerXMLHTTP
	Http.open "POST",HttpUrl,False
	Http.setRequestHeader "Content-Length",Len(PostData)
	Http.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
	Http.Send PostData
	PostHttpPage=bytesToBSTR(Http.responseBody,"utf-8")
	Set Http=Nothing
End Function

Function BytesToBstr(Body,Cset)
	Dim Objstream
	Set Objstream = Server.CreateObject("adodb.stream")
	objstream.Type = 1
	objstream.Mode =3
	objstream.Open
	objstream.Write body
	objstream.Position = 0
	objstream.Type = 2
	objstream.Charset = Cset
	BytesToBstr = objstream.ReadText
	objstream.Close
	set objstream = nothing
End Function

请求其他接口倒是一直没问题,来到请求二维码这一块,返回了一堆乱码,一看就知道是二进制的文件流。

...

微信小程序配置域名的时候提示“校验文件验证失败”

在微信小程序后台配置web-view的业务域名跟扫普通链接二维码打开小程序两项功能时,

一直提示“校验文件验证失败,请下载校验文件,上传到服务器指定的目录”

实际访问校验文件的路径是存在的。找了官方社区也没有找到答案。最后自己还是折腾出来了。

因为我的站点有开启http访问自动跳转到https,于是http访问的时候得到状态码是301而不是200。

明明微信小程序后台配置域名的页面显示的是https,但是微信的服务器访问的居然是http的。。。

...

小程序微信支付的一些要注意的坑

接到一个朋友的电话,说他小程序的微信支付折腾了一个多星期,一直签名错误。由于当时我自己折腾的时候一直很顺利,所以也没当回事。帮他分析了一下,基本就是他没看懂微信的文档导致签名的算法没写对导致的。确实微信官方的文档写作水平很一般。


现在放一些具体的例子在下面给进来的人参考。


首先统一下单里,签名部分因为微信官方文档没有给一个完整的例子,我朋友就掉坑里了。下面提供一个完整的例子(都是必填的参数,排好序的)也就是官方文档里的stringA,注意这里的appid是小程序的appid不是公众号的appid,不要搞错

...

微信小程序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。

 

...

微信小程序video组件调用腾讯视频的解决方案

==================================2018年6月更新最新消息:小程序插件已经支持直接引用腾讯视频了。文档:https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wxa75efa648b60994b&token=735194258&lang=zh_CN==================================最近在折腾微信小程序,需要引用一些腾讯视频网站上的视频去播放,很多地方都是教人用F1...