ไคลเอ็นต์ Python สำหรับ Weixin REST API
ส่วนประกอบ | ความเข้ากันได้ |
---|---|
หลาม | ยี่สิบสาม.* |
pip install python-weixin
* requests
* simplejson
* six
* xmltodict
* pycryptodome
เอกสารเข้าสู่ระบบแอปเพล็ต WeChat
Python ใช้การเข้าสู่ระบบและการลงทะเบียนโปรแกรมขนาดเล็ก
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 |
ปุ่มย่อย | เลขที่ | อาร์เรย์เมนูรอง ตัวเลขควรเป็น 1~5 |
พิมพ์ | ใช่ | ประเภทการดำเนินการตอบสนองเมนู |
ชื่อ | ใช่ | ชื่อเมนู ไม่เกิน 16 ไบต์ เมนูย่อย ไม่เกิน 40 ไบต์ |
สำคัญ | จำเป็นต้องมีการคลิกและการคลิกประเภทอื่นๆ | ค่าคีย์เมนู ใช้สำหรับการพุชอินเทอร์เฟซข้อความ ไม่เกิน 128 ไบต์ |
URL | ประเภทมุมมองต้อง | เว็บลิงค์ผู้ใช้สามารถคลิกเมนูเพื่อเปิดลิงค์ได้ขนาดไม่เกิน 1024 ไบต์ |
media_id ประเภท media_id และประเภท view_limited ต้องเป็น media_id ทางกฎหมายที่ส่งคืนโดยการเรียกอินเทอร์เฟซวัสดุถาวรใหม่ |
การตอบกลับแบบพาสซีฟคือสิ่งที่รวมอยู่ในการตอบกลับหลังจากที่ผู้ใช้ร้องขอ
โปรดดูเอกสารอ้างอิงอย่างเป็นทางการสำหรับเนื้อหาข้อความ: ตอบกลับข้อความผู้ใช้อย่างอดทน
รายการเอพีไอ
โปรดดูเอกสารอ้างอิงอย่างเป็นทางการสำหรับข้อความ: ข้อความบริการลูกค้า
รายการเอพีไอ
สำหรับเนื้อหาข้อความ โปรดดูเอกสารอ้างอิงอย่างเป็นทางการ: ข้อความเทมเพลต