100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 【python获取小程序用户openid】python后端通过前端code获取openid与session_key

【python获取小程序用户openid】python后端通过前端code获取openid与session_key

时间:2023-05-15 17:14:03

相关推荐

【python获取小程序用户openid】python后端通过前端code获取openid与session_key

最近在写后端接口,实现前端小程序用户登录时,需要使用前端发来的code获取用户的openid和session_key,并且返回3rd_session,搜了一些资料,最终实现了功能。

首先说结论:向微信服务器发送请求用的url要用拼接的方式,不可以用传参的方式。

首先是我踩的坑(不成功):

一开始搜到的代码,向微信服务器发送请求的指令是传参方式:

parmas = {'appid': appid,'secret': secret,'js_code': code,'grant_type': 'authorization_code'}url = 'https://api./sns/jscode2session'r = requests.get(url, params=parmas)

下面是正确写法,用字符串拼接,一定要用字符串拼接!!

def fun(request):if request.method == "POST":appid = "小程序appid"secret = "小程序secret"grant_type = "authorization_code" #这个固定js_code = request.POST.get('code')url = "https://api./sns/jscode2session?appid=" + appid + "&secret=" + secret + "&js_code=" + js_code + "&grant_type=" + grant_type#下一行用的requests库,没有的可以 pip install requests安装一下user_info = requests.get(url).json()openid = user_info['openid'] #用户openidsession_key = user_info['session_key'] #用户的session_key#下一行用的库是uuid,没有的可以 pip install uuid安装一下user_uuid = str(uuid.uuid4()) #生成用户的3rd_session传给前端return JsonResponse({"session": user_uuid})

有错误欢迎指正,希望对大家有帮助~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。