From e40688816d99c15555a2cc6d04b5c69a1f8af983 Mon Sep 17 00:00:00 2001 From: hackrobot Date: Sun, 24 Mar 2024 22:43:32 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=90=8E=E7=AB=AF=E9=89=B4=E6=9D=83?= =?UTF-8?q?=E8=8E=B7=E5=8F=96openid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- __pycache__/main.cpython-310.pyc | Bin 8825 -> 9316 bytes main.py | 20 ++++++++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/__pycache__/main.cpython-310.pyc b/__pycache__/main.cpython-310.pyc index e7b7fc9f7b58e910db2e182372998d75c8faabb1..2c1dd81e7bb7faa3aad381f9fffbb03c0bffe835 100644 GIT binary patch delta 1656 zcmZ`(&2tn*6rb+tnVtPeToS=7Buf^O$Yhi3CfQ9k1QGC~P>>QL9;Pf)!*(aky4js{ zPlUu!u_~#uJWv$OQ7lR6KcM*wymW5D=h(OB6#_po=6)P5{y$qqNT*&g*qMXEK{dcAcv4hUfAu&+QrB zxNx78dCxxKz5JCuW0!an+LGTVf{5{5vO@R~VXaW!$NTpz@K1t&iog1T|EO?U6&=O+ zG5(s4s)`*XhA=2&;E>AX1u@N!!$eA(pLmIK@P8$NKPh8r_YG2fVt6m&bw$mKH6 z^20FTo~=YvipWc~l=gU;omJ^~qUC5a6k8LwqbO8oD-}NsrtXN~ZqS)pU!Q7r*D9)` zDlLU%GfF50%q~gn(3k$2+Op&%j3j&LS^i9HCaH}M1O+^?yP<&9HRS*_OcoH11Gp@) zLK*CIqQsG6eM6{7CFZJ#64p{cZzT-V=}Smbp}*Pg`aChEPzjOp2-0Zi11ZT!;q&DU zC8U}GUF85Ww3qY}hh*pgm8Zb~_o^cjhRfl_#&axym+*uwWk(>!P016mJhB!RQPtVy zC`vD9loMdP08{k>WK2j!GlY>Gq?8kJWPR{a1st*p;8N+r;-%qm&uVm;eD2jLJWE&h z?<83DHJJK+<|!j_$&Q>cI&sJnvo1{ONZbW@Sn$@1;?lHcd7lnEP|L=d}A$Cu&owf zcSieH!KQOFnujZZo?M8(c0RvYN4^FE0XS^7TtLHFghhmN2*@hm007R5D4$1o6VG@u zeOt8K-LR{o5R3|ci5ZiT!%UYBWV)Cp#rR?0FgYLp)b|@HfB&$blBt77M<1Bv%)zNb z)dc_2U^$H$(oH2#fJw sr7`kxJa(!w?vOmSsl%LfhB$11I6Xz`(}gP+egv0Jj4Qr^3wNF~pwR_Q<~Qec|L5K_w`a@0ZrkOC21~(T!dABW z=U&-e5c@b3g(Ds=^_Kcd{XEL77XS)ZPn7%si?Ucv$-8{u?I3G71!l7=HRS~ILl_xm z@l)Wy-4oaX*2vA$2y5b@EuA&9L@k6>qrp0?VhU@ysMJ_1&#^XqsMcWZtOIM0AU_sJ zUcE%JlXV4>lkddFX!^|+w$cmW#$iXp?V@^@cXA zal?M7B8t0J`O~;QPZ1F(v=bWtqKT{&Vget}Mp&8+wq}8@#=r)VlEv`-Yz7k|i*QxZ zjjw!Un^z0LCR|;dXQdx@9N!XrgPmt?VPUZGxT=HbMNe90b*O`6^mCb}KQe_U2ZeHl z@2)V>hj~Hg6+JQ)O~}t?#92YtGZAssgczXQ06K@p`5feT^RAJk75#EJ(lH-&(1H%a zp)jerng~iRodPMY$>Ydrqpz2|@~$6Z`#Tj6*ST`s>TQ06`Ct#a8V8eRGb4-E^QA%R zFhT%?8y1~pj}mf(F~T^3W-KNVsCkX-DZ(_Kvb%+$>Cu0}(sa1cpRKP&od`_Gy+jJ8 zuvx5 diff --git a/main.py b/main.py index f0685fd..d711ae9 100644 --- a/main.py +++ b/main.py @@ -25,6 +25,7 @@ from lxml import etree import xml.dom.minidom from pydantic import BaseModel import utils +import requests models.Base.metadata.create_all(bind=engine) @@ -45,25 +46,36 @@ def get_db(): async def root(): return {"message": "Hello World"} +# 微信登录 +@app.get("/login") +def read_users(code, db: Session = Depends(get_db)): + print('code--',code) + payload = {'appid': 'wxa55815dd741a540d', 'secret': '82ce78719cc6b6e4a8ff738704d5b6cc','js_code':code,'grant_type':'authorization_code'} + res = requests.get('https://api.weixin.qq.com/sns/jscode2session', params=payload) + r=res.json() + # 返回参数 session_key/unionid/errmsg/openid/errcode + print('r----',r) + # "errmsg":r['errmsg'],,"errcode":r['errcode'] + return {"session_key":r['session_key'],"unionid":r['unionid'],"openid":r['openid']} + + # 创建用户 -@app.post("/users/") +@app.post("/users") # schemas.UserCreate决定了swagger文档 def create_user(user: schemas.User, db: Session = Depends(get_db)): print('user', user) print('typeuser', type(user)) - # 检测是否存在wxid db_user = crud.get_user_by_wxid(db, user.wxid) print('db_user', db_user) - if db_user: raise HTTPException(status_code=400, detail="wxid already registered") return crud.create_user(db=db, user=user) # 分页查询-用户 -@app.get("/users/") +@app.get("/users") def read_users(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): users = crud.get_users(db, skip=skip, limit=limit) return users