支付宝支付流程:
-项目中使用支付宝支付:
-pay.py类放到项目中
-修改appid,post回调地址,get回调地址,应用私钥,支付宝公钥(在支付宝开发平台生成),通过这些参数生成一个AliPay的对象
-query_params = alipay.direct_pay(
subject="充气娃娃", # 商品简单描述
out_trade_no="x2" + str(time.time()), # 商户订单号
total_amount=money, # 交易金额(单位: 元 保留俩位小数)
),
-pay_url = "https://openapi.alipaydev.com/gateway.do?{}".format(query_params),向这个地址发get请求
-一旦支付成功:支付宝会发一个get请求(一般用于页面显示),一个post请求(一般用户修改订单状态)
支付宝支付整个流程:
-get请求到输入支付金额页面---->点击去付款按钮,发送post请求---->返回支付宝的url地址--->浏览器向这个地址发get请求---->用户付款,付款成功
-一个用于接受回调的视图函数,用户支付成功,支付宝会回调(get,post),通常post用于修改订单信息,get用于页面支付成功的显示
微信推送流程:
微信推送流程:
-用户需要关注我
-需要诱导用户把openid存到我的数据库中
-生成一个微信地址的二维码(放了一个回调地址)
-用户扫描二维码,朝该地址发请求,用户一旦点击允许,微信会朝回调地址发送请求,携带一些参数(但是这些参数中没有openid)
-服务器再次向微信服务器发送请求,携带code,请求回用户的openid,把openid存到自己的数据库
-发消息
-先要获取一个access_token,获取用户openid
-发送消息,需要携带者两个东西,给指定的人发送消息(可以发模板消息,可以发普通消息)