Справочный документ:
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php
Если вам нужно больше функций (WeChat логин, оплата, сообщения и т. д.), вы можете перейти по ссылке:
https://github.com/zwczou/weixin-python/
Используйте pip для установки:
pip install flask-weixin-pay
Или используйте easy_install для установки:
easy_install flask-wexin-pay
Сначала импортируйте библиотеку:
from flask_weixin_pay import WeixinPay, WeixinPayError
Если вы используете Flask, вам необходимо настроить файл конфигурации Flask:
wxpay = WeixinPay()
wxpay.init(app)
Если вы работаете отдельно, вам нужно передать файл конфигурации:
config = {
"WEIXIN_APP_ID": "wxapp_id",
"WEIXIN_MCH_ID": "100000010",
"WEIXIN_MCH_KEY": "128bad2e99a79312e25b2c162c9bab34",
"WEIXIN_NOTIFY_URL": "http://www.example.com/pay/weixin/notify",
}
wxpay = WeixinPay(config)
Создайте заказ:
out_trade_no = wx_pay.nonce_str
try:
raw = wx_pay.unified_order(openid="orU79wrXdrgNRNEZmoFD97rxGkb0", trade_type="JSAPI", body=u"测试", out_trade_no=out_trade_no, total_fee=1)
print raw["prepay_id"]
except WeixinPayError, e:
print e.message
Проверьте заказ:
raw = wx_pay.order_query(out_trade_no=out_trade_no)
Закройте заказ:
raw = wx_pay.close_order(out_trade_no)
Сгенерируйте параметры, необходимые для вызова JSAPI:
// total_fee в единицах измерения — юань
print wx_pay.jsapi(openid="orU79wrXdrgNRNEZmoFD97rxGkb0", body=u"测试", out_trade_no=out_trade_no, total_fee=1)
Подпишите данные:
wx_pay.sign(dict(openid="123"))
Получите 32-битную случайную строку:
wx_pay.nonce_str
Проверьте подпись:
wx_pay.check(dict(openid="123", sign="SIGN"))
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )