返回顶部
首页 > 资讯 > 后端开发 > Python >怎么用python代码实现小程序登录流程时序
  • 912
分享到

怎么用python代码实现小程序登录流程时序

2023-06-30 01:06:31 912人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“怎么用python代码实现小程序登录流程时序”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用Python代码实现小程序登录流程时序”文章能帮助大家解决问题。小程序登录小程序可以

这篇文章主要介绍“怎么用python代码实现小程序登录流程时序”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用Python代码实现小程序登录流程时序”文章能帮助大家解决问题。

小程序登录

小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。

登录流程时序

怎么用python代码实现小程序登录流程时序

说明:

  • 调用wx.login()获取临时登录凭证code,并回传到开发服务器

  • 调用auth.code2Session接口,换取用户唯一标识 OpenID和会话密钥 session_key。

之后开发者服务器可以根据用户标识来生成自定义登录态,用于后续业务逻辑中前后端交互时识别用户身份。

注意:

  • 会话密钥session_key是对用户数据进行加密签名的密钥。为了应用自身的数据安全,开发者服务器不应该把会话密钥下发到小程序,也不应该对外提供这个密钥。

  • 临时登录凭证 code 只能使用一次

小程序的登录总结

1 小程序端执行wx.login()获取code

2 将1中的code发送到后端,后端调用auth.code2Session这个接口,得到openid和session_key

3 自定义登入状态,我们生成一个key与openid和session_key相绑定。把key返回到小程序中

4 小程序端保存,然后下次请求需要登入的接口的时候,把key带上。

案例

# app.js的onLaunch中   因为登录是用户感觉不到的App({  onLaunch: function () {    let that = this    // 登录    wx.login({      success: res => {        // 发送 res.code 到后台换取 openId, sessionKey, uNIOnId        console.log(res.code)   //拿到code        wx.request({          url:that.globalData.baseurl+"/login/",          data:{'code':res.code},          method:'POST',          success(e){            console.log(e.data)            // wx.setStorageSync("token", e.data.data.token)                      }        })      }    }),    globalData: {    userInfo: null,    baseurl:"Http://127.0.0.1:8000"  }# danGo后台中# urls.py 路由中path('login/', user.Login.as_view()),# user.py中from rest_framework.views import apiViewfrom rest_framework.response import Responsefrom api.wx import wx_loginimport hashlib, timefrom Django.core.cache import cachefrom api.models import Wxuserclass Login(APIView):    def post(self, request):        param = request.data        print(request.data)        if not param.get('code'):            return Response({"status": 1, "msg": '缺少参数'})        else:            code = param.get("code")            user_data = wx_login.get_login_info(code)            if user_data:                val = user_data['session_key'] + "&" + user_data['openid']                md5 = hashlib.md5()                md5.update(str(time.clock()).encode("utf-8"))                key = md5.hexdigest()                cache.set(key, val)  # 放进内存redis库中,把key传给前端当token.下次前台带着key就能拿到val                has_user = Wxuser.objects.filter(openid=user_data['openid']).first()  # 判断openid是否存在                if not has_user:                    Wxuser.objects.create(openid=user_data['openid'])                return Response({                    "status": 0,                    "msg": "ok",                    "data": {"token": key}                })            else:                return Response({"status": 2, "data": "无效的code"})# models.py中:from django.db import modelsclass Wxuser(models.Model):    id = models.AutoField(primary_key=True)    openid=models.CharField(max_length=255)    name = models.CharField(max_length=50)    avatar = models.CharField(max_length=200)    language = models.CharField(max_length=50)    province = models.CharField(max_length=50)    city = models.CharField(max_length=50)    country = models.CharField(max_length=50)    #gender = models.CharField(max_length=50)    creat_time = models.DateTimeField(auto_now_add=True)    update_time = models.DateTimeField(auto_now=True)    def __str__(self):        return self.openid# settings.py中:自己注册的微信小程序信息AppId=""AppSecret=""code2Session="https://api.weixin.qq.com/sns/jscode2session?appid={}&secret={}&js_code={}&grant_type=authorization_code"# wx_login.py中:from api.wx import settingsimport requestsdef get_login_info(code):    # 拼接路径    code_url = settings.code2Session.fORMat(settings.AppId,settings.AppSecret,code)    response = requests.get(code_url)  # 返回的是JSON数据    json_response = response.json()    # 把json数据转换为字典    if json_response.get('session_key'):        return json_response    else:        return False# cache缓存配置Redis数据库

关于“怎么用python代码实现小程序登录流程时序”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网Python频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: 怎么用python代码实现小程序登录流程时序

本文链接: https://lsjlt.com/news/326927.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么用python代码实现小程序登录流程时序
    这篇文章主要介绍“怎么用python代码实现小程序登录流程时序”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用python代码实现小程序登录流程时序”文章能帮助大家解决问题。小程序登录小程序可以...
    99+
    2023-06-30
  • python代码实现小程序登录流程时序总结
    目录官方文档小程序登录登录流程时序说明:注意:小程序的登录总结案例官方文档 https://developers.weixin.qq.com/miniprogram/dev/fram...
    99+
    2024-04-02
  • 微信小程序Java登录流程怎么实现
    这篇“微信小程序Java登录流程怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序Java登录流程怎么实现”文...
    99+
    2023-06-26
  • 微信小程序详细登录流程(图解+代码流程)
    💂 个人网站: 【紫陌】【笔记分享网】 💅 想寻找共同学习交流、共同成长的伙伴, 请点击【前端学习交流群】 微信小程序的登录和web端的登录有一点是不同的,小程序需要和微信的服务...
    99+
    2023-08-31
    前端 小程序 微信小程序 Powered by 金山文档
  • 【微信小程序】实现微信小程序登录(附源码)
    实现微信小程序登录 文章目录 实现微信小程序登录登录功能简介界面展示代码展示 登录功能简介 通过点击登录按钮,调用微信接口wx.getUserProfile拿到微信的个人信息,先检查是...
    99+
    2023-09-07
    微信小程序 小程序 微信 前端
  • python用户登录程序怎么实现
    下面是一个简单的Python用户登录程序的实现示例:```pythondef login():username = input("请...
    99+
    2023-09-28
    python
  • 微信小程序的登录流程
    一、背景 传统的web开发实现登陆功能,一般的做法是输入账号密码、或者输入手机号及短信验证码进行登录。 服务端校验用户信息通过之后,下发一个代表登录态的 token 给客户端,以便进行后续的交互,每当token过期,用户都需要重新登录。 而...
    99+
    2023-09-10
    微信小程序 小程序 微信
  • 【小程序】实现登录的流程与封装思路
    文章目录 小程序登录流程演练基本介绍基本演练代码优化 小程序登录流程演练 基本介绍 为什么需要用户登录? 增加用户的粘性和产品的停留时间; 如何识别同一个小程序用户身份? ...
    99+
    2023-10-20
    小程序 javascript 前端
  • 微信小程序登录页面代码
    微信小程序实现登录页面的方法:1.创建微信小程序项目;2.在index.wxml文件中添加页面设计代码;3.在index.wxss文件中添加页面样式代码;4.在index.js文件中添加用户交互代码;5.保存编辑的代码并进行调试即可。具体实...
    99+
    2024-04-02
  • 小程序微信登陆实现流程
    1. 微信登录流程 微信登录官方介绍:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.htm...
    99+
    2023-09-05
    小程序 微信 java 微信小程序登录
  • 小程序实现登录功能
    本文实例为大家分享了小程序实现登录功能的具体代码,供大家参考,具体内容如下 小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。 1、...
    99+
    2024-04-02
  • 微信小程序中怎么实现登录
    今天小编给大家分享一下微信小程序中怎么实现登录的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。业务流程:首先需要一个按钮触发事...
    99+
    2023-07-02
  • 新版小程序怎么实现登录授权
    这篇文章主要介绍新版小程序怎么实现登录授权,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!小程序自上线以来,官方一直在调整API,因此也出现了一批被废弃的接口,作为程序员的我们,此时此...
    99+
    2024-04-02
  • 怎么实现小程序的登录与授权
    这篇文章主要介绍怎么实现小程序的登录与授权,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!登录:如果我们要实现小程序的登录,不妨尝试在开启小程序的时候完成登录。也就是说我们可以在app.js中的onlaunch方法中添...
    99+
    2023-06-06
  • 微信小程序实现token登录
    微信小程序实现token登录 微信小程序登录流程 前端先调用wx.login()接口获取code,再把code发个后端 login() { wx.login({ success: (res)...
    99+
    2023-09-07
    微信小程序 小程序 java
  • 微信小程序登录注册页面代码
    以下是一个简单的微信小程序注册登录页面的代码示例: 用户名: 密码: 确认密码: 注册 已有账号? ...
    99+
    2023-09-10
    微信小程序 小程序 微信
  • 微信小程序实现手机验证码登录
    我们的微信小程序里面,手机验证码登录已经成为不可缺少的一部门,为此,我写的这个手机验证码登录,这里我结合thinkphp6+微信小程序实现 首先我们进入小程序页面: wxml页面: ...
    99+
    2024-04-02
  • 小程序商城前端代码流程
     公用响应 首页接口 获取用户token 获取首页数据 获取商品详情页 评论列表 获取商品搜索历史 搜索商品 获取商品分类 获取商品通过分类...
    99+
    2023-06-05
  • Python实现用户注册登录程序
    本文实例为大家分享了Python实现用户注册登录程序的具体代码,供大家参考,具体内容如下 要求: 1.支持多个用户登录(把已有的用户名和密码存放在一个文件中,锁定的用户名存放在另一个...
    99+
    2024-04-02
  • 微信小程序API怎么实现登录凭证
    这篇文章主要介绍了微信小程序API怎么实现登录凭证的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序API怎么实现登录凭证文章都会有所收获,下面我们一起来看看吧。wx.login(OBJECT)调用接口获...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作