OAuth2通用组件源码,OAuth2.0几乎成了当今第三方平台的一个标准中的标准,其中微信的回调地址是在公众平台设置的,appkey和appsecret啥的是需要改的,您懂的。
支持新浪微博、QQ、淘宝
软件简介
OAuth2.0是OAuth协议的下一版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用代表用户获得访问的权限。同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程。
OAuth2.0几乎成了当今第三方平台的一个标准中的标准(我不知道几年后会出3.0),那既然是一个标准,为什么就不能用一个相对标准的类库或项目来实现呢?翻遍整个china的开源项目,就别说是C#了,连java、php都没有这样的现成项目,那老朽就卖一把老,继续为各位献上一点微薄之力吧。
由于时间关系,第一版我就做了6个接口的对接,其中微信的回调地址是在公众平台设置的,不支持传参,注意哦
整个项目只有register_third.aspx是需要跟您的会员系统对接,其他都不需要修改~~哦,忘了说,appkey和appsecret啥的是需要改的,您懂的。
OAuth2组件升级的重点
1:引入了淘宝登陆(不是搞淘客站的,淘小二以没备案为由,不给过,鄙视下);
2:优化Tool类的GetJosnValue,更加适应不同不规范的Json截取相应的值;
3:搭配了最新版本的CYQ.Data V5数据组件来操作文本数据库。
4:源码中增加了Demo示例。
组件升级的简单介绍
1:登陆的样式变了下,变成这样了:
以前是这样的:
2:代码新增加淘宝支持:TaoBaoAuth.cs
代码如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace OAuth2
{
class TaoBaoAuth : OAuth2Base
{
internal override OAuthServer server
{
get
{
return OAuthServer.TaoBao;
}
}
internal override string ImgUrl
{
get
{
return "<img align='absmiddle' src=\"/skin/system_tech/images/oauth_taobao.png\" /> 淘宝";
}
}
internal override string OAuthUrl
{
get
{
return "https://oauth.taobao.com/authorize?response_type=code&client_id={0}&redirect_uri={1}&state={2}";
}
}
internal override string TokenUrl
{
get
{
return "https://oauth.taobao.com/token";
}
}
public override bool Authorize()
{
if (!string.IsNullOrEmpty(code))
{
string result = GetToken("POST");//一次性返回数据。
//分解result;
if (!string.IsNullOrEmpty(result))
{
try
{
token = Tool.GetJosnValue(result, "access_token");
if (!string.IsNullOrEmpty(token))
{
double d = 0;
if (double.TryParse(Tool.GetJosnValue(result, "expires_in"), out d))
{
expiresTime = DateTime.Now.AddSeconds(d);
}
//读取OpenID
openID = Tool.GetJosnValue(result, "taobao_user_id");
nickName = Tool.GetJosnValue(result, "taobao_user_nick");
return true;
}
else
{
CYQ.Data.Log.WriteLogToTxt("QQOAuth.Authorize():" + result);
}
}
catch (Exception err)
{
CYQ.Data.Log.WriteLogToTxt(err);
}
}
}
return false;
}
}
}
其中,如下图:
异常部分。。一看就知道这类是从QQAuth类复制过来改的。。。这个忘了改了。。sorry..-_-...。
3:Demo部分的项目截图:
其中小图片的目录,藏了好几层,主要是因为秋色园的样式里直接过渡过来的,具体和代码里有路径对应。
- PC官方版
-
新浪微博(织出你的精彩围脖)for S60v5v 2.5.0 3333_0001最新官方版
微博桌面2017(微博电脑客户端)4.5.3.37576 官方版
微波炉(新浪微博客户端)V0.9 中文免费版
新浪微博自定义尾巴版 黑谍新浪微博自动推广专家V1.51 特别版
Remo Drive Wipe2.0中文版