微信开发-二维码-生成二维码容易忽略的错误

 

我的博客迁移至独立博客:https://blog.plcent.com/,欢迎你们访问json

微信中支持生成临时二维码和永久二维码,这二者之间也有略微的区别,至于如何生成,怎么写,这个不在今天的讨论范围内,由于官方文档说的很明白。
今天要说的,是在生成带参数的二维码时,临时二维码和永久二维码之间场景值ID的差异微信

临时二维码:post

post方式提交的json数据中包含scene参数,示例:spa

{"expire_seconds": 604800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": 123}}}code

在临时二维码中只支持scene_id参数,scene_id参数支持传送一个整型的数字,好比:123123123123,最大长度为32位的非零整数blog

为何是非零呢?文档

当临时生成零时二维码时,若是场景值ID是整数,能够正常获取,哪怕你用字符串形式传递例如:字符串

// 如下的方式均可以
// scene_id是数字
{"expire_seconds": 604800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": 123}}}
// scene_id是字符串
{"expire_seconds": 604800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": "123"}}}

可是:若是你传递的是字符串(没法转换成数字的字符串),场景值将会被替换成0,全部这就是为何要场景值是非零的缘由:get

{"expire_seconds": 604800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": "我是会被转换成0的场景值ID"}}}

永久二维码:博客

永久二维码不存在这个问题,由于支持字符串

相关文章
相关标签/搜索