عميل Python لواجهات برمجة التطبيقات Weixin REST
عنصر | التوافق |
---|---|
بايثون | ثلاثة وعشرين.* |
pip install python-weixin
* requests
* simplejson
* six
* xmltodict
* pycryptodome
مستند تسجيل الدخول لتطبيق WeChat الصغير
تنفذ بايثون تسجيل الدخول والتسجيل لبرنامج صغير
from weixin import WXAPPAPI
from weixin . lib . wxcrypt import WXBizDataCrypt
api = WXAPPAPI ( appid = APP_ID ,
app_secret = APP_SECRET )
session_info = api . exchange_code_for_session_key ( code = code )
# 获取session_info 后
session_key = session_info . get ( 'session_key' )
crypt = WXBizDataCrypt ( WXAPP_APPID , session_key )
# encrypted_data 包括敏感数据在内的完整用户信息的加密数据
# iv 加密算法的初始向量
# 这两个参数需要js获取
user_info = crypt . decrypt ( encrypted_data , iv )
للحصول على تفاصيل حول طريقة مصادقة OAuth2 التي تستخدمها Weixin API، يرجى الاطلاع على: https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&lang=zh_CN
يرجى الرجوع إلى نموذج التطبيق لمعرفة طرق الاستخدام المحددة.
بعد الحصول على رمز الوصول، يمكنك استخدام الرمز للحصول على معلومات المستخدم، وما إلى ذلك:
from weixin . client import WeixinAPI
scope = ( "snsapi_login" , )
api = WeixinAPI ( appid = APP_ID ,
app_secret = APP_SECRET ,
redirect_uri = REDIRECT_URI )
authorize_url = api . get_authorize_url ( scope = scope )
access_token = api . exchange_code_for_access_token ( code = code )
api = WeixinAPI ( access_token = access_token )
user = api . user ( openid = "openid" )
from weixin . client import WeixinMpAPI
scope = ( "snsapi_base" , )
api = WeixinMpAPI ( appid = APP_ID ,
app_secret = APP_SECRET ,
redirect_uri = REDIRECT_URI )
authorize_url = api . get_authorize_url ( scope = scope )
access_token = api . exchange_code_for_access_token ( code = code )
api = WeixinMpAPI ( access_token = access_token )
user = api . user ( openid = "openid" )
from weixin . pay import WeixinPay
wxpay = WeixinPay ( appid = 'appid' ,
mch_id = 'mchid' ,
notify_url = 'url' ,
partner_key = 'key' )
create_pay_info = {}
# 统一下单
wxpay . unifiedorder ( ** create_pay_info )
# 查询订单
wxapp . order_query ( out_trade_no = 'out_trade_no' )
# 企业付款
wxepay = WeixinEnterprisePay ( appid = 'appid' ,
mch_id = 'mchid' ,
mch_key = 'mch_key' ,
mch_cert = 'mch_cert' ,
partner_key = 'key' )
wxepay . transfers ( partner_trade_no ,
openid ,
amount ,
desc = u'结算' )
# 企业付款查询
wxepay_query = WeixinEnterprisePayQuery ( appid = 'appid' ,
mch_id = 'mchid' ,
mch_key = 'mch_key' ,
mch_cert = 'mch_cert' ,
partner_key = 'key' )
wxepay_query . gettransferinfo ( partner_trade_no )
المعلمة | هل هو ضروري | يوضح |
---|---|---|
زر | نعم | مصفوفة قائمة المستوى الأول، يجب أن يكون الرقم من 1 إلى 3 |
sub_button | لا | مصفوفة القائمة الثانوية، يجب أن يكون الرقم من 1 إلى 5 |
يكتب | نعم | نوع إجراء استجابة القائمة |
اسم | نعم | عنوان القائمة، لا يزيد عن 16 بايت، القائمة الفرعية لا يزيد عن 40 بايت |
مفتاح | النقر وأنواع النقر الأخرى مطلوبة | قيمة مفتاح القائمة، المستخدمة لدفع واجهة الرسائل، لا تزيد عن 128 بايت |
عنوان URL | يجب أن يكون نوع العرض | رابط الويب، يمكن للمستخدم النقر فوق القائمة لفتح الرابط، لا يزيد عن 1024 بايت |
يجب أن يكون نوع media_id media_id ونوع view_limited هو media_id القانوني الذي يتم إرجاعه عن طريق استدعاء واجهة المواد الدائمة الجديدة |
الرد السلبي هو ما يتم تضمينه في الاستجابة بعد قيام المستخدم بتقديم طلب
يرجى الاطلاع على الوثيقة المرجعية الرسمية لنص الرسالة: الرد السلبي على رسائل المستخدم
قائمة API
يرجى الاطلاع على الوثيقة المرجعية الرسمية للرسالة: رسالة خدمة العملاء
قائمة API
للحصول على نص الرسالة، راجع الوثيقة المرجعية الرسمية: رسالة القالب