支付宝支付流程
安装模块 pip3 install pycryptodome
1.拿到商户号、回调地址、支付宝公钥和我的私钥---生成一个对象
2.对象.direct_pay传支付金额、支付商品描述,支付订单号---返回加密的串(把前面参数参数加密了)
3.拿到加密的串拼接到get请求参数部分
pay_url = "https://openapi.alipaydev.com/gateway.do?{}".format(query_params)
4.重定向到该地址(向该地址发送get请求)
5.用户付款,付款成功支付宝会给我发送两个请求,一个是get请求,一个是post请求
6.咱们的程序需要处理这两个回调请求(请求回来需要验证签名)
get请求一般用于页面展示
post请求用于修改订单状态
项目中需要配置:公钥私钥生成方式:https://docs.open.alipay.com/291/105971
支付宝公钥:商户号中输入的应用公钥,会自动生成一个支付宝公钥,粘贴过来就可以了
应用私钥(用户私钥)
支付宝回调函数中会有:
singn:必须验证签名,验证通过才能进行后续的修改
订单id:根据订单id修改订单状态
注意:如果用户付款了,服务器挂掉的话,支付宝会过一会儿自动再回调(24小时内,隔一段时间就会回调),重启服务器即可
生成当前工程所依赖的第三方模块:
pipreqs ./ --encoding=utf8