当前位置: 首页 > news >正文

网站页面在线设计淘数据

网站页面在线设计,淘数据,南阳做网站公司电话,网站方案讲解技巧1、申请沙箱环境 #需要填一些个人信息 https://opendocs.alipay.com/ 2、使用支付宝登入,并进入控制台,进入开发者工具推荐-->沙箱 3、获取基本信息 主要是APPID,和支付宝网关地址 4、生成应用私钥和应用公钥和支付宝公钥 上面的接口加签方式选择…
1、申请沙箱环境
#需要填一些个人信息
https://opendocs.alipay.com/

2、使用支付宝登入,并进入控制台,进入'开发者工具推荐'-->'沙箱'

3、获取基本信息

主要是APPID,和支付宝网关地址

4、生成应用私钥和应用公钥和支付宝公钥

上面的接口加签方式选择系统默认密钥

注:这里有个坑,如果选择自定密钥,后面回调验签会不成功。

点击查看,可以看到应用私钥和应用公钥和支付宝公钥

6、沙箱账号

这里用商家和买家的账号信息,也可以进行充值

7、下载支付宝沙箱APP

8、在手机上用买家账号和密码登入登入支付宝沙箱APP

9、下载并安装支付宝SDK

pip3 install alipay-sdk-python
10、生成支付链接

在视图函数中调用止函数即可生成支付链接。

import logging
from alipay.aop.api.AlipayClientConfig import AlipayClientConfig
from alipay.aop.api.DefaultAlipayClient import DefaultAlipayClient
from alipay.aop.api.FileItem import FileItem
from alipay.aop.api.domain.AlipayTradeAppPayModel import AlipayTradeAppPayModel
from alipay.aop.api.domain.AlipayTradePagePayModel import AlipayTradePagePayModel
from alipay.aop.api.domain.AlipayTradePayModel import AlipayTradePayModel
from alipay.aop.api.domain.GoodsDetail import GoodsDetail
from alipay.aop.api.domain.SettleDetailInfo import SettleDetailInfo
from alipay.aop.api.domain.SettleInfo import SettleInfo
from alipay.aop.api.domain.SubMerchant import SubMerchant
from alipay.aop.api.request.AlipayOfflineMaterialImageUploadRequest import AlipayOfflineMaterialImageUploadRequest
from alipay.aop.api.request.AlipayTradeAppPayRequest import AlipayTradeAppPayRequest
from alipay.aop.api.request.AlipayTradePagePayRequest import AlipayTradePagePayRequest
from alipay.aop.api.request.AlipayTradePayRequest import AlipayTradePayRequest
from alipay.aop.api.response.AlipayOfflineMaterialImageUploadResponse import AlipayOfflineMaterialImageUploadResponse
from alipay.aop.api.response.AlipayTradePayResponse import AlipayTradePayResponsedef alpay_page(order_id,total_amount,subject,return_url,notify_url):"""功能:网页生成支付宝支付页面:param order_id:订单号(str):param total_amount:订单金额(float):param subject:订单标题:param return_url:同步回调地址:param notify_url:异步回调地址"""logging.basicConfig(level=logging.INFO,format='%(asctime)s %(levelname)s %(message)s',filemode='a', )logger = logging.getLogger('')"""设置配置,包括支付宝网关地址、app_id、应用私钥、支付宝公钥等,其他配置值可以查看AlipayClientConfig的定义。"""alipay_client_config = AlipayClientConfig()        #创建用户对象配置文件         alipay_client_config.server_url = project1.settings.gateway     #支付宝网关alipay_client_config.app_id = project1.settings.APPID           #支付宝APPIDalipay_client_config.app_private_key = project1.settings.private_key   #应用私钥alipay_client_config.alipay_public_key = project1.settings.public_key  #支付宝公钥alipay_client_config.charset = 'utf-8'   """得到客户端对象。注意,一个alipay_client_config对象对应一个DefaultAlipayClient,定义DefaultAlipayClient对象后,alipay_client_config不得修改,如果想使用不同的配置,请定义不同的DefaultAlipayClient。logger参数用于打印日志,不传则不打印,建议传递。"""client = DefaultAlipayClient(alipay_client_config=alipay_client_config,logger=logger)model = AlipayTradePagePayModel()model.out_trade_no = order_idmodel.total_amount = total_amountmodel.subject = subjectmodel.body = "支付宝测试"model.product_code = "FAST_INSTANT_TRADE_PAY"#下面这些注释掉的,是交易的详细信息,有些在沙箱环境中似乎不能用。# settle_detail_info = SettleDetailInfo()# settle_detail_info.amount = 50# settle_detail_info.trans_in_type = "userId"# settle_detail_info.trans_in = "2088302300165604"# settle_detail_infos = list()# settle_detail_infos.append(settle_detail_info)# settle_info = SettleInfo()# settle_info.settle_detail_infos = settle_detail_infos# model.settle_info = settle_info# sub_merchant = SubMerchant()# sub_merchant.merchant_id = "2088721043828344"# model.sub_merchant = sub_merchantrequest = AlipayTradePagePayRequest(biz_model=model)request.notify_url = notify_url  # 异步通知回调地址request.return_url = return_url  # 同步回调地址# 得到构造的请求,如果http_method是GET,则是一个带完成请求参数的url,如果http_method是POST,则是一段HTML表单片段response = client.page_execute(request, http_method="GET")print("alipay.trade.page.pay response:" + response)return response             #返回支付页面url
11、支付宝回调
@csrf_exempt
def pay_callback(req):#支付宝回调函数#verify_with_rsa用于验签from alipay.aop.api.util.SignatureUtils import verify_with_rsalog_file = os.path.join(settings.BASE_DIR, 'uwsgi/uwsgi.log')logging.basicConfig(filename=log_file, level=logging.DEBUG,format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')def visa(data_dict):#验签函数# 获取并删除signsign = data_dict.pop('sign')# 获取并删除sign_typesign_type = data_dict.pop('sign_type')# 将回传参数排序(按ascii码升序排序)并组合成字符串unsigned_str = '&'.join('{}={}'.format(key, data_dict[key]) for key in sorted(data_dict))# 将参数字符串编码message = unsigned_str.encode('utf-8')# 获取支付宝公钥public_key = project1.settings.public_key# 支付宝回调验签try:status = verify_with_rsa(public_key, message, sign)if status:return Trueelse:return Falseexcept BaseException as e:print(e)return Falseif req.method=='POST':#异步回调logging.debug('异步回调')data_dict=req.POST.dict()print('data',data_dict)if data_dict.get('trade_status')=='TRADE_SUCCESS':#判断支付是否成功result = visa(data_dict)          #调用验签函数验签print('异步回签字结果', result)if result:#如果验签成功,则更新订单信息#这里写上你自己的更新订单代码 #验签成功后必须返回'sucess',否则支付宝会一直通过POST方式发送验签信息return HttpResponse('success')return HttpResponse('unsuccess')return HttpResponse('unsuccess')elif req.method=='GET':#同步验签#获取支付宝回传参数(字典)        data_dict=req.GET.dict()result=visa(data_dict)                  #调用验签函数验签print('同步回签字结果',result)if result==True:#验签成功则更新订单信息#这里写上你自己的更新订单代码 context={#返回给用户的信息,可自定义                'status':True,'order':data_dict.get('out_trade_no'),        #订单号                'total_amount':data_dict.get('total_amount'), #订单金额'trade_no':data_dict.get('trade_no')          #交易流水号}return render(req,'web/pay_success.html',context)else:return JsonResponse({'status':False})

http://www.tj-hxxt.cn/news/42818.html

相关文章:

  • 百度云免费做网站友情下载网站
  • 无锡网站制作哪家便宜google谷歌搜索
  • 太原做网站的公司哪家好网络营销策略有哪些
  • 那个网站专做委外发手工潍坊百度关键词优化
  • 嘉鱼网站建设哪家专业g3云推广
  • 永川做网站的公司百度站长平台有哪些功能
  • 网站的建设要多少钱广州谷歌优化
  • discuz 做网站可以吗磁力下载
  • 网站建设在360属于什么类目推广文案怎么写吸引人
  • 域名领域百度搜索引擎优化公司哪家强
  • 网页设计模板素材营销型首页四川百度推广和seo优化
  • 用苹果手机做网站东莞seo网络营销
  • 原来做网站后来跑国外了北京网络推广外包公司排行
  • 公司该建哪种网站企业网站有哪些类型
  • 杭州外贸网站建设郑州百度推广开户
  • 网站建设的技术风险分析与规避项目平台
  • 网站开发需求文档模板中关村在线app
  • 浙江杰立建设集团 网站首页中国站长网入口
  • 自己想做个网站怎么做的厦门seo排名
  • 杭州市富阳区建设局网站昭通网站seo
  • 怎么往网站添加视频seo机构
  • 政府门户网站建设的意义sem优化技巧
  • 仿70网站分类目录源码cilimao磁力猫最新版地址
  • 衡水提供网站制作公司哪家专业图们网络推广
  • 店铺设计效果图软件seo专业论坛
  • 阿里云网站建设好用吗南京响应式网站建设
  • 国外网站有备案吗seo百科
  • 网站建设应对客户问题的话术免费技能培训在哪里报名
  • 个人博客网站备案吗百度推广后台登陆官网
  • 做电销要在哪个网站上找资源百度快速收录网站