微信小程序 登陆流程详细介绍

转载 2018年04月17日 16:31:51

微信小程序 登陆流程

1:session_key和openId是什么?session_key

官方说明为:

session_key是微信服务器生成的针对用户数据进行加密签名的密钥

session_key的用途

(1)对wx.getUserInfo()接口得到“用户信息中的密文”进行解密。
(2)对它“稍作处理”,用作维护小程序的登录态。

“稍微处理”大体为:

(1)生成一个随机数(官方把他叫做3rd_session)
(2)把这个随机数当session的key,session_key + openid为value。

即:session[3rd_session]=session_key+openid

openIdopenId:用户唯一标识

即:每个微信用户在你的小程序的唯一的标识。

微信小程序 登陆流程详细介绍

2:如何获得session_key和openId官方提供了HTTP接口:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

获取步骤:

(1)获得appid,secret,js_code 
(2)用appid,secret,js_code分别替换如上接口地址的APPID、SECRET、JSCODE,其他不变,组装成完整的地址。

例如:

微信小程序 登陆流程详细介绍

3:在“浏览器打开此地址”或者“在后台模拟浏览器的GET执行此地址”就可返回如下的JSON数据(包含openid、sessionkey)

微信小程序获得session_key和openId(加解密、签名系列)

总结:从1,2,3步骤可知,只要获得appid,secret,js_code就可得到session_key和openId

微信小程序 登陆流程详细介绍

4:appid和secret的获得

appid为小程序ID

secret为小程序密钥(AppSecret)

获得方法:小程序后台登录网址:https://mp.weixin.qq.com/

打开小程序后台网址、注册、登录后,按如下图所示就可找到你的AppID和AppSecret。

微信小程序获得session_key和openId(加解密、签名系列)

注意:目前小程序个人不能注册,开放注册范围:企业、政府、媒体、其他组织;当然用这个办法,个人也能注册了。

传送门:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=495

5:js_code如何获得调用wx.login()接口就可获取登录凭证(js_code)

微信小程序获得session_key和openId(加解密、签名系列)

微信小程序 登陆流程详细介绍

6:总结整个session_key获取的流程

(1)注册微信小程序、登录后台在设置中获得appId和secret(密钥)
(2)调用wx.login()接口获取登录凭证js_code
(3)调用wx.request()接口把js_code发送到服务器后台
(4)在服务器后台,已知appId、secret、js_code

然后调用如下官方提供的http接口,即可返回获取openId、session_key

官方提供了http接口地址为:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

软件工程杂志《非程序员》第一期

软件工程杂志《非程序员》第一期名    称: 《非程序员》第一期设    计: UMLCHINA编    者: UMLCHINA联系邮件: think@umlchina.com 版    本: 第一期...
  • dbbdggdbbdgg
  • dbbdggdbbdgg
  • 2001-05-27 12:05:00
  • 709

微信小程序开发(一) 微信登录流程

文/YXJ 地址:http://blog.csdn.net/sk719887916/article/details/53761107 最近在研究微信小程序开发,非常有意思的一个东西。花了一点时间...
  • sk719887916
  • sk719887916
  • 2016-12-20 11:31:47
  • 64354

微信小程序登录流程梳理

  • qq_32795135
  • qq_32795135
  • 2018-02-20 23:07:49
  • 82

微信小程序的简单登录

本人小程序员一个,以下声明仅仅是个人声明,各位就当做是娱乐一下
  • m0_37992327
  • m0_37992327
  • 2017-04-16 14:41:13
  • 12159

微信用户访问小程序的登录过程

概述 当你开发完了一个小程序并部署上线后,某个微信用户第一次访问这个小程序的时候,会弹出一个授权界面,用户可以选择是否使用微信登录,如果选择是,则直接进入到小程序。当你第二次进入该小程序的...
  • linsongbin1
  • linsongbin1
  • 2018-03-24 22:55:44
  • 452

微信小程序登录案例

作者:燕歆波 导读:昨天早上来的早,闲来无事,就写了微信小程序的登录demo,下面来看一下; 主要步骤 1. 在wxml中编写布局,输入用户名和输入密码,两个输入框,垂直排列 ...
  • yanxiaosa
  • yanxiaosa
  • 2017-06-14 09:37:36
  • 2617

微信小程序的登录过程简介

对于微信而言, 小程序算是第三方了, 那么, 小程序是如何登录的呢? 微信肯定不能把密码给小程序, 让小程序来登录啊, 小程序甚至无法获取微信的微信号。 在这里, 我们需要彻底把微信和小程序分开, 割...
  • stpeace
  • stpeace
  • 2017-09-18 23:26:14
  • 3751

微信小程序 登录流程规范

官方文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-login.html?t=20161122 一. 官方登录时序图二. 简单理解这里仅按...
  • u011326979
  • u011326979
  • 2016-12-06 18:25:28
  • 7690

微信小程序中用户登录和登录态维护

让用户登录,标识用户和获取用户信息,以用户为核心提供服务,是大部分小程序都会做的事情。我们今天就来了解下在小程序中,如何做用户登录,以及如何去维护这个登录后的会话(Session)状态。在微信小程序中...
  • qq_35228658
  • qq_35228658
  • 2017-02-13 09:55:21
  • 5358

微信小程序登录流程

1:session_key和openId是什么?session_key 官方说明为: session_key是微信服务器生成的针对用户数据进行加密签名的密钥 session_key的用途 (1...
  • sinat_36947685
  • sinat_36947685
  • 2017-01-17 16:17:35
  • 6491
收藏助手
不良信息举报
您举报文章:微信小程序 登陆流程详细介绍
举报原因:
原因补充:

(最多只允许输入30个字)