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 架构解析及开源地址的更多相关文章

  1. 开源第三方登录组件OAuthLogin2.0 解析及开源地址

    OAuthLogin2.0介绍地址: 博客地址:http://www.cnblogs.com/dazhuangtage/p/6306133.html Nuget地址:https://www.nuget ...

  2. 开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台

    Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/ 项目结构说明: AuthorizationProviders文件夹下主要存放内置的授权平台. ...

  3. 鸿蒙开源第三方件组件——轮播组件Banner

    目录: 1.功能展示 2.Sample解析 3.Library解析 4.<鸿蒙开源第三方组件>系列文章合集 前言 基于安卓平台的轮播组件Banner(https://github.com/ ...

  4. 第三方登录过程—OAuth2.0协议

    ---恢复内容开始--- 理清思路 1.在第三方注册成为开发者,拿到第三方给的client_id(app_id---就像你的身份证.QQ号)和client_secret(就像你的QQ密码): 2.填写 ...

  5. OAuthLogin2.0

    开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台   Nuget地址:https://www.nuget.org/packages/OAuthLogin ...

  6. 关于Linux开源项目基础组件make编译流程

     关于Linux开源项目基础组件make编译流程 非常多Linux开源项目都会用到编译出可运行文件的make.这个是有一套流程的. 首先,GNU构建系统:https://en.wikipedia. ...

  7. 使用OAuth2.0协议的github、QQ、weibo第三方登录接入总结

    目录 第三方接入总结 OAuth2.0介绍 github OAuth2.0登录接入 国内第三方应用商SDK使用 微博SDK 腾讯QQ SDK passport.js插件使用 安装 相关中间件.路由 返 ...

  8. 鸿蒙开源第三方组件 ——B站开源弹幕库引擎的迁移(上)

    鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录: 一.弹幕库的基础知识 二.弹幕库的使用方法 三.sample解析 四.作者系列文章合集 前言 ...

  9. 鸿蒙开源第三方组件——SlidingMenu_ohos侧滑菜单组件

    目录: 1.前言 2.背景 3.效果展示 4.Sample解析 5.Library解析 6.<鸿蒙开源第三方组件>文章合集 前言 基于安卓平台的SlidingMenu侧滑菜单组件(http ...

随机推荐

  1. Linux 环境部署记录(一) - 基础设定

    时间设置 查看系统当前日期/时间: date -R 查看系统硬件时钟: hwclock --show 设置硬件时间: hwclock --set --date="07/18/17 20:55 ...

  2. Beanstalkd 的理解

    Beanstalkd 的理解 Beanstalkd 是一个轻量级的内存型队列,利用了和Memcache 类似的协议.其官网beanstakkd官网 下方的感谢语说: Many thanks to me ...

  3. 心情烦闷annoying,贴几个图!唉!annoying

    nothing could be more annoying!!!!! lost!failed!

  4. django中session的存储位置

    django-session 存放位置 设置session的保存位置,有三种方法: 保存在关系数据库(db) 保存在缓存数据库(cache) 或者 关系+缓存数据库(cache_db) 保存在文件系统 ...

  5. 汉诺塔问题php解决

    面向过程解决 <?php function hanio($n,$x,$y,$z){//把n个盘子,按照要求从x移到z,y是中介 //递归跳出条件 if($n==1){ move($n, $x, ...

  6. 使用FASTJSON做反序列化的时间格式处理

    JSONObject.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.mmm"; Productorder tmp1 = JSONObj ...

  7. 前端统计利器:Sentry & Matomo

    今天主要说下两款前端统计工具的使用,Sentry & Matomo.以下主要是统计代码接入方式,因此使用前提是你已经在自己的服务器上搭建好了Sentry和Matomo的服务器 Sentry统计 ...

  8. HttpClient的包含注意事项

    HttpClient 功能介绍 以下列出的是 HttpClient 提供的主要的功能,要知道更多详细的功能可以参见 HttpClient 的主页. 实现了所有 HTTP 的方法(GET,POST,PU ...

  9. isa class superclass metaclass

    http://www.cnblogs.com/feng9exe/p/7232915.html Note: 其实这里的难点就在于对 和 的区分. .class 当 target 是 Instance 则 ...

  10. Java认证与授权服务JAAS基础概念

    转:http://www.nosqlnotes.com/technotes/jaas-concept/ JAAS是”Java Authentication and Authorization Serv ...