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

Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/

项目结构说明:

AuthorizationProviders文件夹下主要存放内置的授权平台。

CustomException文件夹主要存放各个平台对应的错误处理机制。

说下涉及到的几个名词:

平台:

  定义一个数据结构,用于规范外部交易平台名称。名称是业务系统为Etp分配的唯一标识,由不限长度的字符组成。由于极易发生拼写错误,强烈建议在程序中采用如下规范写法:

  (1)需要使用某一平台的名称字符串时,应使用其对应的静态字段获取实例,然后使用Name字段获取名称字符串;

  (2)需要对一个名称字符串进行处理时,应先使用FromString方法获取其对应的实例,然后使用相应的实例方法进行处理;

  (3)扩展机制:如果开发人员要使用未预定义的平台,可以定义自己的枚举器,使用静态字段存储Etp实例。

应用:

  描述平台中的应用,存储该应用的基本接口信息。

  应用是平台用来管理接口调用权限的机制。业务系统方要访问平台接口必须先申请一个应用,经平台方审核通过后才具有调用相应接口的权限。

使用教程:

  Nuget安装:Install-Package OAuthLogin2.0

配置文件修改如下:

1:在configSections中添加节点:

   <section name="OAuthLogin2.0" type="OAuthLogin2.0.OAuthLoginConfig,OAuthLogin2.0"/>

2:在configSections节点下添加节点:

<OAuthLogin2.0>
    <etps>
    <etp name="QQ" authorizationUrl="https://graph.qq.com/oauth2.0/authorize" tokenUrl="https://graph.qq.com/oauth2.0/token" apiUrl="https://graph.qq.com/oauth2.0/me">
      <apps>
        <add appkey="" secret="" redirectUrl=""/>
      </apps>
    </etp>
    </etps>
    <AuthorizationProviders>
      <add etp="qq" type="OAuthLogin2.0.QQAuthorizationProvider" assembly="OAuthLogin2.0"/>
    </AuthorizationProviders>
    <EtpExceptionBuilders>
      <add etp="qq" type="OAuthLogin2.0.QQExceptionBuilder" assembly="OAuthLogin2.0"/>
    </EtpExceptionBuilders>
</OAuthLogin2.0>

跳转到授权URL:

public class HomeController : Controller
    {
        public ActionResult Index()
        {
            var platform = Platform.Find(EtpName.QQ);
            return Redirect(platform.Applications[0].GenerateAuthorizationUrl("Test"));
        }
    }

获取回调结果:

 public  ActionResult Index()
        {
            var palteFrom = Platform.Find(EtpName.QQ);
            var token=palteFrom.Applications[0].GetToken(System.Web.HttpContext.Current.Request);//GetToken支持异步获取,异步方法为GetTokenAsync
            return Content(token.ToString());
        }

结果如下:

放上一张核心图,详细会在下篇讲:

时间: 2024-08-09 23:56:03

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

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

OAuthLogin2.0介绍地址: 入门地址:http://www.cnblogs.com/dazhuangtage/p/6306133.html Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/ 关于上篇文章园友评论的几个问题说明: 1:为什么内置了那么多没用的平台? 答:内置的那些平台均是上个电商项目所用到的平台,昨天在做一个项目的时候,需要用到QQ登录,我就拿这个项目扩展了下.后来觉得应该能帮助其他人,然后就放出来了.   2:开

OAuthLogin2.0

开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台 Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/ 项目结构说明: AuthorizationProviders文件夹下主要存放内置的授权平台. CustomException文件夹主要存放各个平台对应的错误处理机制. 说下涉及到的几个名词: 平台: 定义一个数据结构,用于规范外部交易平台名称.名称是业务系统为Etp分配的唯一标识,由不限长度的

用于新浪微博,腾讯QQ,淘宝 OAuth2.0 登陆的NET类库封装

目前开放OAuth2互联接口比较常用的有新浪微博,腾讯QQ,淘宝,其实还有微信,只是微信的我木有申请下来,因为手续麻烦,貌似需要扫描它的协议签字然后发过去,所以就放弃封装微信OAuth2登陆接口了,待以后给补上!关于淘宝OAuth网站接入登陆目前淘宝是暂停审核了貌似,也许是因为财大气粗比较任性吧,不过你还是可申请账号的,可以做应用提交给淘宝. 需要源代码的小伙伴请猛戳这里下载,需要已经编译好Dll的小伙伴请猛戳这里下载. 一. 下面给出各个OAuth2.0申请合作的地址: -- sinaweib

老牌开源Office操作组件NPOI现已支持.NET Core

昨天在微信群里听到老牌Excel开发利器NPOI的作者瞿总说4.6.1版本的NPOI已经支持.NET Standard 2.0了,这也就意味着你可以在.NET Core中使用NPOI了. 作者:依乐祝 原文地址 :https://www.cnblogs.com/yilezhu/p/10269281.html 写在前面 曾经的.NET Framework时代就很喜欢使用这个组件来对Excel的进行操作,可是随着.NET Core时代的到来以及NPOI不支持.NET Core所以就找到了园子里的大神

QQ、淘宝、阿里旺旺在线网页链接代码及详解 很实用

你可直接到官网去生成代码,简单.方便,相信都能上网的你,对这不会有难度的,认识字的就行,赶紧去吧! 1.阿里旺旺官网: http://page.1688.com/html/wangwang/download/windows/wbtx.html 2.淘宝官网: http://www.taobao.com/wangwang/2011_seller/wangbiantianxia/index.php?spm=0.0.0.9.nlulHG 3.QQ官网 : http://wp.qq.com (这里需要让

友盟社会化Android组件之第三方登录

前段时间公司需要,逐步了新浪微博.腾讯qq.微信等授权登录验证的问题.如果要一个个申请,看文档写代码也是很多流程的.干脆用友盟社会化Android组件之第三方登录.友盟是集成了这些平台,还有其他主流的平台的.我在这里主要讲一下友盟里面微博登录.先看看友盟是怎么介绍自已的. 一.友盟社会化分享介绍 友盟社会化分享组件,帮助移动应用快速具备微信分享,微博分享.登录.评论.喜欢等社会化组件功能,助力产品推广,并提供实时.全面的社会化数据统计分析服务,是国内最大的社会化分享SDK. 支持各大社交平台 精

joomla QQ登录,微信登录,微博登陆,人人登陆,明道登录的第三方登录

在joomla网站上集成QQ,微信,支付宝,人人,明道,短信,微博登录现在已经成为可能.只需要安装ZMAX程序人开发的ZMAX第三方登录组件,一键就可以让你的网站轻松集成当前流行的第三方登录. 国产开发 本扩展由ZMAX程序人团队开发,由南宁市程序人软件科技有限责任公司(工商注册号:450108000113385 1-1)运营.我们将持久对该扩展进行升级维护,对用户提供技术支持. 强大的功能 支持多种第三方登陆 QQ账号登陆,新浪微博账号登陆,支付宝账号登陆,人人账号登陆,明道账号登陆,微信账号

实现QQ、微信、新浪微博和百度第三方登录(Android Studio)

前言: 对于大多数的APP都有第三方登录这个功能,自己也做过几次,最近又有一个新项目用到了第三方登录,所以特意总结了一下关于第三方登录的实现,并拿出来与大家一同分享: 各大开放平台注册账户获取AppKey和AppSecret Mob开放平台地址:http://www.mob.com/#/index QQ开放平台地址:http://open.qq.com/ 新浪微博开放平台地址:http://open.weibo.com/ 微信开放平台地址:https://open.weixin.qq.com/ 

Android 实现QQ、微信、新浪微博和百度第三方登录

前言: 对于大多数的APP都有第三方登录这个功能,自己也做过几次,最近又有一个新项目用到了第三方登录,所以特意总结了一下关于第三方登录的实现,并拿出来与大家一同分享: 各大开放平台注册账户获取AppKey和AppSecret Mob开放平台地址:http://www.mob.com/#/index QQ开放平台地址:http://open.qq.com/ 新浪微博开放平台地址:http://open.weibo.com/ 微信开放平台地址:https://open.weixin.qq.com/