相应的公钥私钥的获取,请参考上一章( 支付宝小程序+Django获取会员基础信息(获取用户唯一标识 user_id和access_token)的内容
前言
Django后端实现生成小程序二维码
准备
1.在开发中心—小程序应用—选择小程序—开发管理–功能列表中添加‘小程序二维码’的功能。
支付宝小程序端
这部分看个人,可以自行传参到后端,用于扫描小程序的启动参数,在此,不做过多的步骤,直接在Django后台生成小程序码。
Django后端
from alipay.aop.api.DefaultAlipayClient import DefaultAlipayClient
from alipay.aop.api.AlipayClientConfig import AlipayClientConfig
from alipay.aop.api.request.AlipayOpenAppQrcodeCreateRequest import AlipayOpenAppQrcodeCreateRequest
from django.http import HttpResponse,JsonResponse
import urllib
def zfb_code():
alipay_client_config = AlipayClientConfig()
alipay_client_config.server_url = 'https://openapi.alipay.com/gateway.do'
alipay_client_config.app_id = '小程序APPID'
# 应用私钥
alipay_client_config.app_private_key = '应用私钥'
# 支付宝公钥
alipay_client_config.alipay_public_key = '支付宝公钥'
AlipayClient = DefaultAlipayClient(alipay_client_config)
get_code=AlipayOpenAppQrcodeCreateRequest()
get_code.biz_content={
"url_param":"pages/index/index/",
#启动参数
"query_param":"x=1",
"describe":"二维码描述"
}
user_info_dict = AlipayClient.execute(get_code)
result = json.loads(user_info_dict)
print('二维码生成测试:', result)
#小程序码保存路径
path = "C:/Users/Administrator/Desktop/backwest/static/testCode.png"
#下载保存
urllib.request.urlretrieve(result['qr_code_url'], filename=path)