PHP调微信小程序接口:生成小程序码,常见问题
- 一、接口文档地址
- 二、接口调用
- 三、返回值
- 1、说明
- 2、正常返回
- 3、异常返回
- 四、注意
- 五、PHP调用
- 六、常见问题
一、接口文档地址
获取小程序码,适用于需要的码数量极多的业务场景。通过该接口生成的小程序码,
永久有效
,数量暂无限制
。
- 地址导航:
微信官方文档
->小程序
->服务端
->小程序码
->getUnlimited
请移步文档地址 >>>
二、接口调用
- 调用详情请看官方文档>>>
三、返回值
1、说明
- 如果调用成功,会直接返回图片二进制内容,如果请求失败,会返回 JSON 格式的数据。
2、正常返回
- 返回的图片 Buffer
3、异常返回
- 数据格式:
json
- json内容:errcode(number)-错误码;errmsg(string)-错误信息
- errcode 的合法值:45009-调用分钟频率受限(目前5000次/分钟,会调整),如需大量小程序码,建议预生成;41030-所传page页面不存在,或者小程序没有发布
四、注意
POST
参数需要转成JSON
字符串,不支持form
表单提交。- 接口只能生成已发布的小程序的二维码
- 调用分钟频率受限(
5000次/分钟
),如需大量小程序码,建议预生成 - scene 参数:
最大32个可见字符
,只支持数字,大小写英文以及部分特殊字符:!#$&’()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用urlencode
处理,请使用其他编码方式) - page 参数:必须是
已经发布的小程序存在的页面
(否则报错),例如pages/index/index
, 根路径前不要填加 /
,不能携带参数(参数请放在scene字段里),如果不填写这个字段,默认跳主页面
五、PHP调用
- 代码
public function test() {$result = self::getQrCode();var_export($result);die();
}//获取二维码
public function getQrCode() {$url = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN';$data = ['scene' => 'uid=1&orderId=2', //最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)'page' => '', //必须是已经发布的小程序存在的页面(否则报错),例如 pages/index/index, 根路径前不要填加 /,不能携带参数(参数请放在scene字段里),如果不填写这个字段,默认跳主页面'width' => 200, //二维码的宽度,单位 px,最小 280px,最大 1280px];$result = self::curlPostJson($url, $data);return $result;
}//json post请求
public function curlPostJson($url, $data, $header = []) {$data = json_encode($data);$ch = curl_init();if (!empty($data)) {curl_setopt($ch, CURLOPT_POST,true);curl_setopt($ch, CURLOPT_POSTFIELDS, $data);}$header[]='Content-Type: application/json; charset=utf-8';curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); //为true,则会跟踪爬取重定向页面,否则,不会跟踪重定向页面curl_setopt($ch, CURLOPT_HTTPHEADER, $header);curl_setopt($ch, CURLOPT_TIMEOUT, 30); //设置超时时间:30scurl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //忽略ssl检测curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //1 或 TRUE 将curl_exec()获取的信息以字符串返回,而不是直接输出。-curl_setopt($ch, CURLINFO_HEADER_OUT, true); //TRUE 时追踪句柄的请求字符串,从 PHP 5.1.3 开始可用。这个很关键,就是允许你查看请求headercurl_setopt($ch, CURLOPT_URL, $url);$output = curl_exec($ch);if (!$output) {// echo "request $url fail:", (array)curl_error($ch); //记录日志}curl_close($ch);
// echo "request $url success:" . json_encode(array($url, $header, $output), true); //记录日志return $output;
}
- 输出
'{"errcode":40001,"errmsg":"invalid credential, access_token is invalid or not latest rid: 60a3271a-770b3ab0-448314f5"}'
六、常见问题
- 小程序普通二维码配置
- 生成小程序二维码传参scene的问题
- golang 微信小程序获取二维码scene参数报错 invalid scene rid: f05f96ab-5382f139-14b13d2f
- 微信小程序获取二维码scene参数报错 41030:invalid page rid: xx-xx-xx
PHP调微信小程序接口:生成小程序码,常见问题相关推荐
- 转载:在微信小程序中 生成二维码
目录 转载: weapp-qrcode-canvas-2d 仓库地址 测试环境 使用 安装方法1:直接引入 js 文件 安装方法2:npm安装 安装完成后调用 例子1:没有使用叠加图片 例子2:使用叠 ...
- 微信小程序实现生成二维码功能并下载到本地
微信小程序实现生成二维码功能并下载到本地 背景 实现 备注 背景 有这样一个需求,后台返回了url地址,微信小程序将url地址转成二维码图片,展示在页面上,并且该二维码图片可下载到用户手机相册中 实现 ...
- 微信官方提供的生成二维码接口得到的是当前公众号的二维码
转自:http://blog.csdn.net/phil_jing/article/details/53910083 微信官方提供的生成二维码接口得到的是当前公众号的二维码,官方文档 目前有2种类型的 ...
- 微信官方提供的生成二维码接口得到的是当前公众号的二维码。
一定说明,这种方法我还没有测试,如果有疑问欢迎在评论区域讨论. .................... ................... 谢谢. 微信官方提供的生成二维码接口得到的是当前公众号 ...
- 微信小程序之生成二维码
首先先扯一些题外话,本人是java行业的小白,因为是改行做的java,之前的工作就不提了. 之前写过几篇随便,刚看了下,觉得比较low,就都删了,所以也算是进入java行业的第一篇随笔,如果有表述上或 ...
- 【微信小程序】生成二维码方式
前言 基础库 2.12.0 开发者工具 1.03.2008270 生成二维码方式 微信小程序的二维码可分为: 微信生成的二维码 普通链接二维码 微信生成的二维码,是指调用微信小程序服务端接口 wxac ...
- 实战微信支付 APIv3 接口(小程序的)
开场白直接引用官方文档的吧. 为了在保证支付安全的前提下,带给商户简单.一致且易用的开发体验,我们推出了全新的微信支付 APIv3 接口. 为啥不用官方 SDK? 官方 SDK 不错,只是依赖 Apa ...
- 调用支付宝接口生成小程序二维码的坑(PHP)
引言:最近在开发支付宝小程序生成二维码的时候碰到了一点问题,记录一下 1.需求 正在开发的这个项目是一个电商类小程序,需求是给每个产品生成一个独立的小程序二维码 2.实现 了解了需求之后,开始查官方文 ...
- 2021年新微信小程序开发系统源码易客多小程序saas系统扫码点餐小程序支付宝小程序快速生成系统源码源代码
2021年新微信小程序开发系统源码小程序saas系统扫码点餐小程序支付宝小程序快速生成系统 产品介绍:易客多多合一小程序快速生成系统是厦门四六开科技有限公司开发的快速开发微信百度支付宝小程序生成系统, ...
- vue H5页面跳转微信小程序以及生成二维码跳转小程序
研究了两种H5跳转小程序的方法,同时携带参数 1. 手机浏览器打开H5页面,点击按钮拉起微信小程序 2. H5页面上生成小程序二维码,手机微信扫码跳转目标小程序 为了开发方便,以上两种均借助了微信小程 ...
最新文章
- Android Interactive Animation
- 跨域请求的一种解决方案
- 从零开始使用Realsense D435i运行VINS-Mono
- PAT(乙级)1009
- C语言程序设计基础练习题
- 两年不工作、月花200块,90后躺平学大师已有了一批「信徒」
- php 多级分成手机版,PHP 层级菜单数组处理,由一级数组转换为多级数组的递归实现...
- Java基础篇:什么是死锁?如何去避免它?
- HG8240电信光猫禁用TR069之修改配置法
- CNN卷积层里的多输入多输出通道channel 动手学深度学习v2 pytorch
- SQL Server 2008 R2 建立数据库,建立表,建立存储过程
- C语言ascll码表值和字符的互相转换的程序
- python画喜羊羊_PYTHON养成日记 DAY-8
- 设计模式 访问者模式
- 删除Github中已有仓库或文件
- 南京信息工程计算机老师,南京信息工程大学计算机与软件学院导师教师师资介绍简介-姚永雷...
- 【已解决】谷歌浏览器提示:无法访问此网站网址为 http://localhost:6667/XXX/XXX 的网页可能暂时无法连接,或者它已永久性地移动到了新网址
- 计算机知识竞赛活动工作总结,知识竞赛活动工作总结
- C语言解约瑟夫环问题(随机密码版)
- Cassandra之jdbc-cassandra使用笔记
热门文章
- 营销管理手册_从店长手册入手,推动营销管理大升级
- 好用的代理服务器工具_secscanauthcheck越权检查工具
- python web框架 多线程_Django基础一之web框架的本质
- 圆排列问题详解(原理+代码)
- SLAM学习笔记-------------(二)初识SLAM
- 51nod1003阶乘后边0的数量
- pythoncanny边缘检测自适应阈值_一种自适应阈值的Canny边缘检测算法
- maven - 初识
- vue+node全栈移动商城【7】路由跳转-注册页面
- 逆向微信-分析学习微信是如何快速构建静态TableView界面的