支付宝小程序填坑

389 阅读2分钟

众所周知,小程序里基本废弃了对cookie的使用,如果涉及到登录态等问题可以使用storage进行暂存,对于登录来说,就涉及到一个 Authentication-Info 的取值、存储问题。思路也很简单,就是登录请求之后,接口端会在响应头里把相关字段信息返回,前端去取对应字段就可以了。微信小程序没毛病,但是到了支付宝小程序里,问题就出现了.....

我们开发基本都是使用小程序开发者工具进行的,可以看到响应头信息里边对应的 authentication-info 信息,直接取出来进行相关逻辑处理。然后我们到真机上进行测试,安卓系统没问题,但是ios系统就崩了!!!因为登录后边的接口是需要授权才能正常请求的,现在一直提示未授权。

联合后端童鞋一起排查问题,没有发现逻辑上有什么问题,最后通过打印相应数据,仔细查看发现问题所在:

在支付宝小程序里,安卓系统响应头信息所有字母都是小写的,就和开发者工具是一致的,但是在ios系统下,响应头各个字段首字母都是大写的。

也就是说 authentication-info 在安卓系统和开发工具里都是:authentication-info; ios系统里是:Authentication-Info

因为在微信小程序里没有类似的问题,但是支付宝小程序里出现了,所以个人觉得是支付宝小程序在底层没有做兼容处理,而且类似的问题原因也很不好查,所以希望支付宝小程序以后可以针对兼容方面有好的改善吧。