开源第三方登录组件OAuthLogin2.0 架构解析及开源地址
OAuthLogin2.0介绍地址:
入门地址:http://www.cnblogs.com/dazhuangtage/p/6306133.html
Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/
关于上篇文章园友评论的几个问题说明:
1:为什么内置了那么多没用的平台?
答:内置的那些平台均是上个电商项目所用到的平台,昨天在做一个项目的时候,需要用到QQ登录,我就拿这个项目扩展了下。后来觉得应该能帮助其他人,然后就放出来了。
2:开源地址呢?????
答:往后面看。。。。。
我不觉得我是一个文笔很好的人,所以我更喜欢上图,下面我放上架构图,大家看图应该更容易理解:
平台命名机制:

平台和应用之间的关系:

用户授权过程:

授权回调过程:

异常处理机制:

MVC使用教程:
public ActionResult Auth(string etpname)
{
var etp = EtpName.FromString(etpname);
var plateFrom = Platform.Find(etp);
if (plateFrom == null)
return Content("不支持的第三方登录平台!");
return Redirect(plateFrom.Applications[].GenerateAuthorizationUrl(etpname));
}
回调方法:
public async Task<ActionResult> AuthCallBack()
{
var state = Request.QueryString["state"];
var etp = EtpName.FromString(state);
var plateFrom = Platform.Find(etp);
if (plateFrom == null)
return Content("回调参数错误!");
var tokent = await plateFrom.Applications[].GetTokenAsync(System.Web.HttpContext.Current.Request);
if (string.IsNullOrEmpty(tokent.OpenId))
{
return Content("获取用户信息失败!");
}
return Content("获取用户信息成功!" + tokent.ToString());
}
开源地址:https://github.com/dazhuangtage/OAuthLogin2.0
还有一个OAuthManager框架,用来管理授权信息的,不知道对大家有没有用。。。反正目前我正在用。。。。OAuthManager框架参考了Ef的DbContent架构。。大家觉得有用,就点个赞吧。。。
开源第三方登录组件OAuthLogin2.0 架构解析及开源地址的更多相关文章
- 开源第三方登录组件OAuthLogin2.0 解析及开源地址
OAuthLogin2.0介绍地址: 博客地址:http://www.cnblogs.com/dazhuangtage/p/6306133.html Nuget地址:https://www.nuget ...
- 开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台
Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/ 项目结构说明: AuthorizationProviders文件夹下主要存放内置的授权平台. ...
- 鸿蒙开源第三方件组件——轮播组件Banner
目录: 1.功能展示 2.Sample解析 3.Library解析 4.<鸿蒙开源第三方组件>系列文章合集 前言 基于安卓平台的轮播组件Banner(https://github.com/ ...
- 第三方登录过程—OAuth2.0协议
---恢复内容开始--- 理清思路 1.在第三方注册成为开发者,拿到第三方给的client_id(app_id---就像你的身份证.QQ号)和client_secret(就像你的QQ密码): 2.填写 ...
- OAuthLogin2.0
开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台 Nuget地址:https://www.nuget.org/packages/OAuthLogin ...
- 关于Linux开源项目基础组件make编译流程
关于Linux开源项目基础组件make编译流程 非常多Linux开源项目都会用到编译出可运行文件的make.这个是有一套流程的. 首先,GNU构建系统:https://en.wikipedia. ...
- 使用OAuth2.0协议的github、QQ、weibo第三方登录接入总结
目录 第三方接入总结 OAuth2.0介绍 github OAuth2.0登录接入 国内第三方应用商SDK使用 微博SDK 腾讯QQ SDK passport.js插件使用 安装 相关中间件.路由 返 ...
- 鸿蒙开源第三方组件 ——B站开源弹幕库引擎的迁移(上)
鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录: 一.弹幕库的基础知识 二.弹幕库的使用方法 三.sample解析 四.作者系列文章合集 前言 ...
- 鸿蒙开源第三方组件——SlidingMenu_ohos侧滑菜单组件
目录: 1.前言 2.背景 3.效果展示 4.Sample解析 5.Library解析 6.<鸿蒙开源第三方组件>文章合集 前言 基于安卓平台的SlidingMenu侧滑菜单组件(http ...
随机推荐
- 循环while 和 continue
while 1: print("行动吧") # 组成:while 条件: #条件为真,则执行语句块.之后再回去判断条件是否为真,再执行....till条件为假为止. 语句块 # 条 ...
- 导出类成员里含有stl对象
How to export an instantiation of a Standard Template Library (STL) class and a class that contains ...
- 页面中图片以背景图形式展示好还是以img标签形式展示
img和background-image的异同: img是网页结构层面上的标签,页面中多一个img标签就会多一次http请求,且当我们浏览页面时,img标签作为网页结构的一部分,会在浏览器加载结构的过 ...
- quartz(转)
1. CronTrigger时间格式配置说明 CronTrigger配置格式: 格式: [秒] [分] [小时] [日] [月] [周] [年] 序号 说明 是否必填 允许填写的值 允许的通配符 ...
- EOS资料收集
柚子(EOS)可以理解为Enterprise Operation System,即为商用分布式应用设计的一款区块链操作系统.EOS是EOS软件引入的一种新的区块链架构,旨在实现分布式应用的性能扩展.注 ...
- BZOJ1597:[USACO]土地购买(斜率优化DP)
Description 农夫John准备扩大他的农场,他正在考虑N (1 <= N <= 50,000) 块长方形的土地. 每块土地的长宽满足(1 <= 宽 < = 1,000 ...
- CVE-2017-8046 复现与分析
环境搭建 使用的项目为https://github.com/spring-guides/gs-accessing-data-rest.git里面的complete,直接用IDEA导入,并修改pom.x ...
- kukubeadm 1.6.1 + docker1.2.6 安装问题
kubeadm init --apiserver-advertise-address=192.168.20.229 --pod-network-cidr=10.244.0.0/16 kubelet: ...
- 内存,缓存,cpu,硬盘关系
RAM(random access memory)即随机存储内存,这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序.我把它叫耗电存储器 ROM(Read-Only Memory)即只 ...
- Intellij IDEA的激活(2100年你值得拥有)
下载ide官网地址:https://download.jetbrains.com/idea/ideaIU-2018.2.7.exe 安装下一步下一步:进入安装bin目录 首先下载需要破解的jar包链接 ...