2023-02-28 16:28:48 +08:00
|
|
|
import requests as rq
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from typing import Union
|
|
|
|
|
2023-03-07 10:13:13 +08:00
|
|
|
# appid = "wxf82af5874b6e717b"
|
|
|
|
# secret = "a68142194e276f81c90c034db11aef43"
|
2023-02-28 16:28:48 +08:00
|
|
|
|
2023-03-07 10:13:13 +08:00
|
|
|
appid = "wx71fd35cb6a7a58d8"
|
|
|
|
secret = "18fadc76a7616699ca49b571347fe3a8"
|
2023-02-28 16:28:48 +08:00
|
|
|
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)
|
2023-03-02 15:19:14 +08:00
|
|
|
print(res)
|
2023-02-28 16:28:48 +08:00
|
|
|
return res
|