支付宝小程序+Django实现模板消息

相应的公钥私钥的获取,请参考上一章( 支付宝小程序+Django获取会员基础信息(获取用户唯一标识 user_id和access_token)的内容

------前言

支付宝小程序与微信小程序实现模板消息的方式一样,都提供两种实现模板消息的方式。一种是表单提交的形式,一种是支付的形式,在这里介绍的是表单提交的方式。具体的内容可以参考官网

------准备

1.在开发中心—小程序应用—选择小程序—开发管理–功能列表中添加‘小程序模板消息’的功能。
在这里插入图片描述
2.在“支付宝小程序—运营中心—留存工具—模板消息”中添加消息模板
在这里插入图片描述
这里的模板ID和关键词,是我们接下来需要用到的东东。
在这里插入图片描述

------支付宝小程序端

官网解释:页面的form组件,属性report-submit为true时,可以声明为需发模板消息,此时用户点击按钮提交表单可以获取formId,用于发送表单类模板消息。

index.axml

<form report-submit="{{true}}" onSubmit="formSubmit" onReset="formReset">
  <button size="default" type="primary" form-type="submit"  class="btn_style"></button>
</form>

通过formSubmit方法,提交formID到后端,实现模板消息发送。
index.js

 formSubmit: function (e) {
		console.log('formId:',e.detail.formId)
       my.request({
          url: '',//目标服务器
          data: {
			form_id:e.detail.formId
          },
          success: res => {
          	console.log('成功')
          },
          fail:res=>{
          console.log('失败')
          }
        })
  },
------Django后端
from django.http import HttpResponse,JsonResponse
from alipay.aop.api.DefaultAlipayClient import DefaultAlipayClient
from alipay.aop.api.request.AlipayOpenAppMiniTemplatemessageSendRequest import AlipayOpenAppMiniTemplatemessageSendRequest
from alipay.aop.api.AlipayClientConfig import AlipayClientConfig

#接收小程序端的数据,并返回给小程序端数据
def send_message(request):
	form_id=request.GET['form_id']
	zfb_senmessage(form_id)
	return HttpResponse('返回结果')
	
#实现模板消息发送
def zfb_senmessage(form_id):
    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)
    send_message_request=AlipayOpenAppMiniTemplatemessageSendRequest()
    send_message_request.biz_content={
    					#用户的use_id,[可参考上一篇文章获取](https://blog.csdn.net/qq_42278240/article/details/102707632)
                        "to_user_id":'填入use_id',
                        "form_id":form_id,
                        "user_template_id":"填入模板ID",
                        "page":"page/index/index",
                        "data":{"keyword1":{"value":""},
                                "keyword2":{"value":""},
                                "keyword3":{"value":""}
                                }
                            }
    user_info_dict = AlipayClient.execute(send_message_request)
    result = json.loads(user_info_dict)
    print('模板消息请求结果:',result)

------结束

这里存在一个问题,模板消息请求结果显示formid不合法,但是却依旧可以发送服务消息。这个问题还未解决,有经验的PY侠,可以在下面评论,点悟下我,谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
微信小程序会议室预约系统是一种在微信小程序平台上的应用程序,用于方便用户预约和管理会议室的使用。而Django是一个基于Python的开源Web框架,可以用于构建强大的服务端后台。 通过微信小程序会议室预约系统,用户可以方便地浏览和选择可用的会议室,查看会议室的详细信息,如容纳人数、设备设施等,然后预约和管理已预约的会议室。用户可以选择预约时间段,填写会议主题、参与人员等信息,并进行预约申请。管理员可以对预约申请进行审批,并在审批通过后确认预约。 而Django服务端后台可以用来管理和处理会议室预约系统的各种业务逻辑。首先,它可以处理用户的注册和登录功能,确保只有合法用户能够使用系统。其次,它可以处理预约申请的审批流程,根据一定的规则和条件对预约申请进行审核并进行相应的通知和处理。此外,Django还可以处理会议室的管理功能,包括添加、修改和删除会议室的信息、管理会议室的可用时间段等。 通过微信小程序Django服务端后台的结合,会议室预约系统能够实现前后端的协作,为用户提供方便的预约会议室的功能,并为管理员提供高效的审批和管理功能。用户可以在微信小程序上进行会议室的浏览、预约和管理,而Django服务端后台则负责处理和管理与会议室预约系统相关的业务逻辑,确保系统的正常运行和数据的安全性。这种结合使得会议室预约系统更加完善和易于使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狼性书生

谢谢鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值