微信网站应用登录

news/2024/5/19 14:37:30/文章来源:https://blog.csdn.net/weixin_34110749/article/details/94477368

一、准备工作

1.认证的微信开发者账号一只

2.审核通过的网站应用一个

3.授权域名可用

二、微信登录流程

  网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。授权流程如下:

  1.第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;

  2.通过code参数加上AppID和AppSecret等,通过API换取access_token;

  3.通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。

  流程图:

  

三、构造授权页面,请求code

  为了满足网站定制化的需求,微信提供了两种方式:

  1.构造授权链接

  

  其中各个参数,微信开放平台里面有很详细的解释,这里注意的一点是回调地址必须是在回调域名内,并且urlencode之后才可以正确使用,成功后会携带state和code参数跳到回调页面。

  

  2.js微信登录

    ①在页面中引入js文件

    <script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></script>

    ②在需要登录的页面实例化登录对象

    

    这里的回调地址与第一种方式一样,必须是urlencode之后的授权域名下的地址,这里的二维码显示可以自己设置样式,只要容器的id是你在实例化的时候设置的就好了

   

 

(个人测试,比较丑) 

四、获取access_token

    在上一步我们拿到code之后,就可以通过code来获取这个应用的access_token了。

  

 

  

  access_token的有效期是7200秒,当这个token超时后,我们可以使用refresh_token来进行刷新获取新的access_token。refresh_token拥有较长的有效期(30天),当refresh_token失效的后,需要用户重新授权。

  请求链接如下:

  

  返回结果:

  

  在我们获取到access_token的同时,我们同时也获取到了用户的openid和unionid。这个openid和uniond是对于微信开发平台网站应用的openid,不是对于公众号的openid,与公众号毫无关联。union则是多个微信网站应用之间的关联。

五、根据access_token调用接口

  在我们获取到access_token之后就可以根据不同的scope权限调用接口了,scope权限区分如下:

  

  大家可以在构造授权的时候自行根据需要填写授权,这里并没有写我们构造授权链接是填写的“snsapi_login”,但是我个人测试发现可以获取access_token以及获取个人信息,这个"snsapi_login"应该是包含了上述两种scope的。

  主要能调用的几个接口如下:

  ①获取access_token

  ②刷新(续期)access_token

  ③获取用户个人信息(unionid机制)

  

 

  这是获取用户个人信息的接口调用方式,access_token和openid都是来自用code换取access_token之后得到的数据,返回结果如下

  

六、参考链接

微信网站应用微信登录开发指南:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316505&token=&lang=zh_CN

 

微信网站应用授权后接口调用:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316518&token=&lang=zh_CN

 

 

  

 

转载于:https://www.cnblogs.com/lina520/p/7279643.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_760389.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery插件ReverseOrder实现Javascript倒序及了解prependTo函数

是否需要将网页元素进行倒序&#xff0c;使用jQuery插件ReverseOrder可以实现此功能&#xff0c;ReverseOrder插件可以将HTML元素&#xff0c;如<p>&#xff0c;<li>等任意元素进行重新倒序排列&#xff0c;效果图如下&#xff1a; 使用说明 需要使用jQuery库文件…

如何更有效使用 Rational AppScan 扫描大型网站,第 1 部分: 工作原理及技术分析...

近来看到AppScan的技术介绍&#xff0c;感觉不错&#xff0c;与同行分享。 Rational AppScan&#xff08;简称 AppScan&#xff09;其实是一个产品家族&#xff0c;包括众多的应用安全扫描产品&#xff0c;从开发阶段的源代码扫描的 AppScan source edition&#xff0c;到针对 …

关于工商银行网站打不开的问题终极解决办法

首先你应该试一试的:网银最好是用IE菜单: "工具"-->"Internet选项"-->"安全"选项卡, "可信站点", 将所有icbc相关的网站都删除(或者全部删除吧), 99%的错误都是由这个该死的地方产生的.以下是转载的:上面的不行再试试吧. 最近有…

大型网站应用之海量数据和高并发解决方案总结一二

转载地址&#xff1a;https://blog.csdn.net/xlgen157387/article/details/53230138一、网站应用背景 开发一个网站的应用程序&#xff0c;当用户规模比较小的时候&#xff0c;使用简单的&#xff1a;一台应用服务器一台数据库服务器一台文件服务器&#xff0c;这样的话完全可以…

新网站是否应该使用 Drupal 8?

前不久刚和大家探讨了是否应该将网站升级到 Drupal 8 的问题&#xff0c;并不建议大家进行升级&#xff08;详情可参考《是否应该立即将网站升级到Drupal 8&#xff1f;》&#xff09;。然而&#xff0c;如果是建立一个新的网站&#xff0c;使用 Drupal 8 是否又合适呢&#xf…

将不确定变为确定~本机是否可以调试带域名的网站

我们都知道&#xff36;&#xff33;在调试中会启动一个或多个&#xff08;根据你的解决方案中的&#xff37;&#xff25;&#xff22;项目而定&#xff09;WebDev.WebServer40.exe进程&#xff0c;这个进程为我们提供了.net运行时&#xff0c;就是你访问&#xff29;&#xf…

HAProxy实现网站高并发集群

简介&#xff1a;HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理&#xff0c;支持虚拟主机&#xff0c;它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点&#xff0c;这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件…

大学学python,通过这些刷题网站成了别人眼中大佬

哈喽&#xff0c;大家好,这次为大家分享几个编程刷题网站&#xff0c;巩固基础知识&#xff0c;提升自己的能力水平 首先明确一:我们为什么要刷题呢? 1.通过刷题米提高自己所学专业知识的巩固程度&#xff0c;知道自己的不足之处 2.有可能你通过这些平台刷过的题&#xff0…

大流量、高并发的网站的底层系统架构

动态应用&#xff0c;是相对于网站静态内容而言&#xff0c; 是指以c/c、php、Java、perl、.net等 服务器端语言开发的网络应用软件&#xff0c;比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通 常与数据库系统、缓存系统、分布式存储系统等密不可分。 大型动态应用…

手机站SEO优化需要外链吗

移动网站对于市场来说&#xff0c;也不是什么新鲜事情了。现在也越来越多的企业客户&#xff0c;更加关注企业网站的搜索效果。 甚至愿意为了网站的移动搜索优化效果&#xff0c;愿意再单独支付费用。也就是PC理PC的&#xff0c;移动理移动的。 百度官方上关于移动网站的基础建…

关于WordPress建站的原理二三事

2019独角兽企业重金招聘Python工程师标准>>> 在写关于仿站文章详情页如何制作之前&#xff0c;我觉得有必要就一些原理性的问题&#xff0c;做一些说明。文章详情页的核心模块和首页有很多相似的地方&#xff0c;比如调用文章的标题、文章的内容、文章分类、作者等&…

大型网站的 HTTPS 实践(一)—— HTTPS 协议和原理

详见&#xff1a;http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt387 1 前言 百度已经于近日上线了全站 HTTPS 的安全搜索&#xff0c;默认会将 HTTP 请求跳转成 HTTPS。本文重点介绍 HTTPS 协议, 并简单介绍部署全站 HTTPS 的意义。 2 HTTPS 协议概述 HTTPS 可以…

大型网站架构之分布式缓存

缓存是优化网站性能的第一手段。在大型网站中&#xff0c;缓存通常用来保存热点数据&#xff0c;或者保存应用上下文相关信息。比如之前提到的session服务器集群就可以用分布式缓存来搭建。当然&#xff0c;分布式缓存还可用于缓存数据库中的热点数据以减轻数据库的压力。 分布…

屏蔽网站广告插件:广告终结者

1. 上网站&#xff1a; http://www.adtchrome.com/ Chorme下载地址&#xff1a; http://www.adtchrome.com/%E5%B9%BF%E5%91%8A%E7%BB%88%E7%BB%93%E8%80%853.1.4.rar 2. 进入chrome扩展程序设置界面&#xff1a; 3. 将解压后的插件文件拖入此界面即可。 4. 后面再打开网页&a…

解读大型网站系统架构的演化

前言一个成熟的大型网站&#xff08;如淘宝、京东等&#xff09;的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性&#xff0c;它总是随着用户量的增加&#xff0c;业务功能的扩展逐渐演变完善的&#xff0c;在这个过程中&#xff0c;开发模式、技术架构、设计…

【转】高扩展性网站的50条原则

《高扩展性网站的50条原则》&#xff0c;利用一天半的时间快速浏览总结的电子书&#xff0c;对网站的建设有一个原则性的把握&#xff0c;书中提到的大部分原则现在已成为互联网行业的共识&#xff0c;但并不妨碍我们重新整理分类&#xff0c;从全局层面把控高扩展性网站的建设…

秒杀网站系统设计详解

2019独角兽企业重金招聘Python工程师标准>>> 最近总有一些朋友问高并发问题&#xff0c;后来就想自己把一个秒杀系统作为例子详细分解一下&#xff0c;也是一个学习过程。 首先假设场景&#xff0c;预计该活动可能有1万人参加&#xff0c;那最大并发数为1万。 主要面…

办公资源:你曾错过的PPT视频教程网站

身边有好多小哥哥&#xff0c;姐说不会制作PPT模板&#xff0c;怎么办呀&#xff1f;我想说不会就学嘛&#xff01;可有人问了想学又不知道从哪里开始着手。诶呀&#xff01;真是令人脑壳疼的问题。其实现在网络发展这么快了&#xff0c;网上随便搜索就会有很多PPT制作教学的课…

在 Windows 的 IIS 上部署 .net core 网站

参考&#xff1a; .net core 2.0学习笔记&#xff08;二&#xff09;&#xff1a;部署到Windows和Liunx系统 - ZuQing - 博客园 使用 IIS 在 Windows 上托管 ASP.NET Core | Microsoft Learn 在 Visual Studio 2017 远程 IIS 计算机上的远程调试 ASP.NET Core 一、安装 SDK…

第一个在 Linux 下的 .net core 2.1 网站 ( Jexus )

制作最简单的 .net core Web应用程序 本文的主要目标是部署&#xff0c; 所以就不多在 Web 应用程序上赘述了&#xff0c; 如下图&#xff1a; 1. 用 VS 2017 创建 ASP.NET Core Web 应用程序项目 HelloCore&#xff1a; 2. 项目上右键生成&#xff0c; 再右键发布&#xff1a…