.net Core2.2 WebApi通过OAuth2.0实现微信登录

前言

微信相关配置请参考 微信公众平台 的这篇文章。注意授权回调域名一定要修改正确。

微信网页授权是通过OAuth2.0机制实现的,所以我们可以使用 https://github.com/china-live/QQConnect 这个开源项目提供的中间件来实现微信第三方登录的流程。

开发流程

1、新建一个.net core webapi 项目。在NuGet中查找并安装 AspNetCore.Authentication.WeChat 包。

2、修改 appsettings.json 配置文件,增加以下配置:

 

640?wx_fmt=png

3、修改 Startup

640?wx_fmt=png

4、新增 AccountController

 

640?wx_fmt=png

640?wx_fmt=png

5、将网站发布到外网,请求

https://你的授权域名/api/account/LoginByWeChat?redirectUrl=授权成功后要跳转的页面

 即可调起微信授权页面。

注意

微信授权必须使用https

微信开放平台和微信公众平台都有提供网站用微信登录的接口,前者适用于任何网站,后者只适用于微信服务号的内嵌网站

本篇相关源码地址:https://github.com/ren8179/QrF.OAuth.WeChat/tree/master

原文地址:https://www.cnblogs.com/wiseant/p/10515842.html

.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com
640?wx_fmt=jpeg

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

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

相关文章

Nginx优化(重点)与防盗链(新版)

Nginx优化(重点)与防盗链 Nginx优化(重点)与防盗链一、隐藏Nginx版本号1、修改配置文件2、修改源代码 二、修改Nginx用户与组1、编译安装时指定用户与组2、修改配置文件指定用户与组 三、配置Nginx网页的缓存时间四、实现Nginx的日志切割1、data的用法2、编写脚本进行日志切割的…

CodeForces730E Award Ceremony(拓扑排序+结论)

CF730E. Award Ceremonyproblemsolutioncodeproblem 题目链接 题目大意: 给出 nnn 个队封榜时的榜单 aia_iai​ 和揭榜时的变化情况 did_idi​。 揭榜时,这个队的名次会变化 tit_iti​。 注意在别的队揭榜时,自己队的排名也是动态变化的…

.Netcore 2.0 Ocelot Api网关教程(番外篇)- Ocelot v13.x升级

由于Ocelot系列博客好久没更新(差不多有10个月的时间了),在此先说声抱歉,Ocelot系列会继续更新下去。在写上一篇配置管理的时候发现官方文档已经和以前的不一样,而Ocelot也从5.0版本更新到了13.x版本,进行了…

CF765F Souvenirs(暴力、线段树)

解析 比较神奇的一道题。 考虑一个常规套路:把询问离线,移动右端点,维护左端点答案。 考虑暴力维护,对于当前的 aixa_ixai​x,左侧如图所示的这两条线上的点都可以产生新的可能答案。 容易构造使得单次产生的新点是…

Hard Disk Drive HDU - 4788

Hard Disk Drive HDU - 4788 题意: 通常制造商认为1“kilo”等于1000,但操作系统会认为是1024。 因此,当你购买了一个100MB的硬盘,电脑却只显示大约有95MB,这缺失了大约5MB。 对于硬盘的大小,有多种单位描…

ASP.NET Core 沉思录 - 环境的思考

我的博客换新家啦,新的地址为:https://clrdaily.com :-D今天我们来一起思考一下如何在不同的环境应用不同的配置。这里的配置不仅仅指 IConfiguration 还包含 IWebHostBuilder 的创建过程和 Startup 的初始化过程。0 太长不读环境造成的差异在架构中基本…

深度:从 Office 365 新图标来看微软背后的设计新理念

开始表演请关注我的公众号“寒树Office”来获取一些新鲜而有趣的新闻与知识,最近又有两家俱乐部上线了(东莞与长沙),俱乐部的活动告一段落,接下来的日子里我将持续与大家分享 Office 365 的精彩内容,这次很…

NET Core微服务之路:实战SkyWalking+Exceptionless体验生产下追踪系统

前言当一个APM或一个日志中心实际部署在生产环境中时,是有点力不从心的。比如如下场景分析的问题:从APM上说,知道某个节点出现异常,或延迟过过高,却不能及时知道日志反馈情况,总不可能去相应的节点上一个一…

.NET 中创建支持集合初始化器的类型

对象初始化器和集合初始化器只是语法糖,但是能让你的代码看起来更加清晰。至少能让对象初始化的代码和其他业务执行的代码分开,可读性会好一些。本文将编写一个类型,可以使用集合初始化器构造这个类型。不只是添加元素的集合初始化器&#xf…

【无码专区8】三角形二维数点——计数有多少个给定点落在三角形区域内

因为只有std,没有自我实现,所以是无码专区 主要是为了训练思维能力 solution才是dls正解,但是因为只有潦草几句,所以大部分会有我自己基于正解上面的算法实现过程,可能选择的算法跟std中dls的实现不太一样。 std可能…

为什么我的会话状态在ASP.NET Core中不工作了?

原文:Why isnt my session state working in ASP.NET Core? Session state, GDPR, and non-essential cookies作者:Andrew Lock译文:https://www.cnblogs.com/lwqlun/p/10526380.html译者:Lamond Lu在本篇博客中,我将…

现身说法:实际业务出发分析百亿数据量下的多表查询优化

今天给大家带来的讨论主题是通过实战经验来对百亿数据量下的多表数据查询进行优化,俗话说的好,一切脱离业务的架构都是耍流氓,接下来我就整理一下今天早上微信群里石头哥给大家分享的百亿数据量多表查询架构以及优化思路。由于本文内容整理自…

Help Jimmy POJ - 1661

Help Jimmy POJ - 1661 题意: 场景中包括多个长度和高度各不相同的平台。地面是最低的平台,高度为零,长度无限。 Jimmy老鼠在时刻0从高于所有平台的某处开始下落,它的下落速度始终为1米/秒。当Jimmy落到某个平台上时&#xff0c…

ASP.NET Core 沉思录 - ServiceProvider 的二度出生

ASP.NET Core 终于将几乎所有的对象创建工作都和依赖注入框架集成了起来。并对大部分的日常工作进行了抽象。使得整个框架扩展更加方便。各个部分的集成也更加容易。今天我们要思考的部分仍然是从一段每一个工程中都大同小异的代码开始的。IWebHostBuilder CreateWebHostBuilde…

Acwing 216. Rainbow的信号

Acwing 216. Rainbow的信号 题意: 给你n个数,在这n个数中,等概率地选取两个数l,r,如果l>r,则交换l,r 把信号中的第 l 个数到第 r 个数取出来,构成一个数列 P。 A 部分对话的密码是数列 P 的 xor 和的…

合肥.NET技术社区首次线下聚会全程回顾【多图】

2019年3月16日对于合肥.NET来说是一个特别的日子,因为这是合肥.NET技术社区首次非正式线下聚会!这次聚会受场地限制(毕竟是聚餐的形式),即使换成了小椅子后,最多也只能容纳24个人,所以还有一些小…

SignalR第一节-在5分钟内完成通信连接和消息发送

前言首先声明,这又是一个小白从入门到进阶系列。 SignalR 这个项目我关注了很长时间,中间好像还看到过微软即将放弃该项目的消息,然后我也就没有持续关注了,目前的我项目中使用的是自己搭建的 WebSocket ,连接管理和消…

【学习笔记】信息学竞赛中的概率与期望小结

信息竞赛——概率与期望事件事件的蕴含、包含事件的互斥事件的对立事件的和(并)事件的积(交)事件的差概率事件的独立性全概率公式贝叶斯公式概率DP(竞赛中的考察)期望(竞赛中的考察)…

尝试:Script Lab,快速 O365 开发工具//SL01)

《前言》Script Lab 我希望有一个系列(连载),可是我挺担心没偿没有能力去驾驭它。虽然早年前己经接触过,但一直未有下决心开始 Office 365 的开发之旅,虽然一直被光标老师所鼓舞,但是我心有旁骛还没有真正做…

Keiichi Tsuchiya the Drift King

Keiichi Tsuchiya the Drift King 题意: 给定一辆小车长宽分别为 b,a,轨道的圆弧部分半径为 r,圆弧对应的角度为 d,求出小车能通过轨道的最小轨道宽度 w。 题解: 我们考虑小车处于什么状态会使弯道最宽…