24 lines
634 B
Python
24 lines
634 B
Python
import requests as rq
|
|
from pydantic import BaseModel
|
|
from typing import Union
|
|
|
|
appid = ""
|
|
secret = ""
|
|
|
|
|
|
class WxAppCode2SessionRes(BaseModel):
|
|
session_key: Union[str, None]
|
|
unionid: Union[str, None]
|
|
errmsg: Union[str, None]
|
|
openid: Union[str, None]
|
|
errcode: Union[int, None]
|
|
|
|
|
|
# 通过code获取用户唯一标识
|
|
def code2Session(code: str) -> WxAppCode2SessionRes:
|
|
res = rq.get("https://api.weixin.qq.com/sns/jscode2session",
|
|
{"appid": appid, "secret": secret, "js_code": code, "grant_type": "authorization_code"})
|
|
data = res.json()
|
|
res = WxAppCode2SessionRes(**data)
|
|
return res
|