支付宝小程序API 小程序二维码

2018-10-25 16:32 更新

支付宝小程序API小程序二维码

详细小程序二维码参考指引

alipay.open.app.qrcode.create

生成小程序推广二维码

请求地址

环境 HTTPS请求地址
正式环境 https://openapi.alipay.com/gateway.do

公共请求参数

名称 类型 必填 描述
app_id String 支付宝分配给开发者的应用ID
method String 接口名称
format String 仅支持JSON数
charset String 请求使用的编码格式,如utf-8,gbk,gb2312等
sign_type String 商户生成签名字符串所使用的签名算法类型,目 前支持RSA2和RSA,推荐使用RSA2
sign String 商户请求参数的签名串,详见签名
timestamp String 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss"
version String 调用的接口版本,固定为:1.0
app_auth_token String 详见应用授权概述
biz_content String 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档

请求参数

名称 类型 必填 示例 描述
url_param String page/component/component-pages/view/view 小程序中能访问到的页面路径
query_param String x=1 小程序的启动参数,打开小程序的query,在小程序onLaunch的方法中获取
describe String 二维码描述 对应的二维码描述

公共响应参数

名称 类型 必填 描述
code String 网关返回码
msg String 网关返回码描述
sub_code String 网关明细返回码
sub_msg String 网关明细返回码描述
sign String 签名

响应参数

名称 类型 必填 描述
qr_code_url String 二维码图片链接地址

代码示例

java版本

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayOpenAppQrcodeCreateRequest request = new AlipayOpenAppQrcodeCreateRequest(); 
request.setBizContent("{" +
"\"url_param\":\"/index.html?name=ali&loc=hz\"," + "\"query_param\":\"name=1&age=2\"," + "\"describe\":\"二维码描述\"" +
" }");
AlipayOpenAppQrcodeCreateResponse response = alipayClient.execute(request); 
if(response.isSuccess()){
    System.out.println("调用成功");
} else {
    System.out.println("调用失败");
}

php版本

$aop = new AopClient ();
$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do'; 
$aop->appId = 'your app_id';
$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串'; 
$aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';
$aop->apiVersion = '1.0';
$aop->signType = 'RSA2';
$aop->postCharset ='GBK';
$aop->format ='json';
$request = new AlipayOpenAppQrcodeCreateRequest (); 
$request->setBizContent("{"."\"url_param\":\"/index.html?name=ali&loc=hz\","."\"query_param\":\"name=1&age=2\","."\"describe\":\"二维码描述\""." }");
$result = $aop->execute ( $request);
$responseNode = str_replace(".","_",$request->getApiMethodName())."_response"; 
$resultCode = $result->$responseNode->code;
if(!empty($resultCode)&&$resultCode == 10000){
    echo "成功";
} else {
    echo "失败"; 
}

.Net版本

IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", "app_id", "merchant_private_key", "json", "1.0", "RSA2", "alipay_public_key", "GBK", false); 
AlipayOpenAppQrcodeCreateRequest request= new AlipayOpenAppQrcodeCreateRequest(); request.BizContent="{" +
"\"url_param\":\"/index.html?name=ali&loc=hz\"," + "\"query_param\":\"name=1&age=2\"," + "\"describe\":\"二维码描述\"" +
" }";
AlipayOpenAppQrcodeCreateResponse response=client.Execute(request); 
Console.WriteLine(response.Body);

HTTP版本

https://openapi.alipay.com/gateway.do?timestamp=2013-01-01 08:08:08&method=alipay.open.app.qrcode.create&app_id=2893&sign_type=RSA2&sign=ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE&version=1.0&biz_content=
{"url_param":"/index.html?name=ali&loc=hz", "query_param":"name=1&age=2", "describe":"二维码描述"} 
//为确保安全通信,需自行验证响应示例中的sign值是否为蚂蚁金服所提供。

响应示例

json示例

{
    "alipay_open_app_qrcode_create_response": {
        "code": "10000",
        "msg": "Success",
        "qr_code_url": "http://mmtcdp.stable.alipay.net/wsdk/img?fileid=A*lSbPT5i9C1wAAAAAAAAAAABjAQAAAA&t=9005d7f574f30246b89c20c17302115f&bz=mmtcafts&"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

异常示例

json示例

{
    "alipay_open_app_qrcode_create_response": {
        "code": "20000",
        "msg": "Service Currently Unavailable",
        "sub_code": "isp.unknow-error",
        "sub_msg": "系统繁忙"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

业务错误码

公共错误码

错误码 错误描述 解决方案
INVALID_PARAMETER 参数有误 检查请求参数是否传入
APPQRCODE_NOT_TINYAPP 非小程序应用类型 检查app应用类型,本接口只支持小程序的应用
SYSTEM_ERROR 系统繁忙 稍后重试
APP_QUERY_ERROR 应用查询错误 确认应用是否存在,如果应用存在,则稍后重试
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号