我不忙-微博OAuthV2SDK

一个更方便,更快速的C#SDK,希望能帮助更多的朋友学习和使用

官网:http://wobumang.com/afx 我不忙爱分享
微群:http://q.weibo.com/152956 开发者之家
Q 群:25844867 开发者之家

代号:Wbm.OAuthV2SDK
版本:V3.1.0324
作者:xusion
发布:2013-03-24

下载地址

旧版本下载地址

问题反馈

如果您是使用者,发现了我们的程序有bug,或有更好的建议,在请issues里提交。
如果您是开发者,可以Fock我们的程序,再把您的修改或改进提交到Pull Requests,我们要认真审核的。

更新日志

2014-03-24 V3.1.0324
1、加入新浪微盘Oauth2.0协议。
 
 
2013-08-11 V3.0.0811
1、多平台SDK进行整合,可单独调用,也可统一调用。
2、缓存模式设置移入配置文件(Wbm.OAuthV2.config)。
3、去除站内应用授权机制。
 
 
2012-04-08 V2.1.0408
1、SDK代码重新整理,代码层次更加清晰。
2、API请求地址并入配置文件,调用或修改更多方便,快速。
3、API错误不再占用系统异常。
2、SDK移除写日志功能,网站自行捕捉错误或异常写日志。
 
 
2012-01-09 V1.7.0109
1、增加站内应用授权机制。
 
 
2011-11-26 V1.6.1220
1、整合API错误代码对照表,添加错误友好信息(SinaApiError.cs),含有中、英文版本。如:发送重复内容,则返回“不要太贪
 
心了,已经发送过一次”。
2、SinaBase模式添加Cookies缓存加密处理。使用DES算法,加/解密KEY需要在配置文件(Wbm.SinaV2.config)里修改。
3、SinaBase模式去除服务器缓存模式。
4、修复写日志类型错误。
 
 
2011-11-26 v1.5.11.26
1、修复API返回错误信息处理机制(紧急)。
2、修复写日志时错误。
3、修复演示版出现正在中止线程异常。
4、修改SinaBase为在SDK基础上自行封装的一个调用基本类。
5、修改配置文件apiLog节点,增加3种写日志模式,例如:关闭写日志等。
6、去除配置文件缓存模式和缓存时间节点。原功能集成在SinaBase里。
7、添加调用SDK文档(查看_DocDemo.aspx),并使用两个调用方式(SinaBase和非SinaBase)。
8、添加显示错误文件Error.aspx。
 
 
2011-10-30 v1.0.10.30
1、使用[可选参数]特性,定制参数更方便,灵活。
2、使用XML配置文件。
3、封装Model,用户信息Model(SinaMUsers.cs)
4、含有一个简单的实例,更快速容易的使用接口。
5、使用日志记录。日志文件路径直接在配置文件(Wbm.SinaV2.config)里修改。
6、拥有一个网站可以部署多个应用功能,只需要在配置文件添加app节点即可。

使用文档

文件说明

  • Wbm.OAuthV2Demo SDK演示文件
  • Wbm.OAuthV2SDK SDK核心文件

体验说明

  • 直接使用VS打开Wbm.OAuthV2SDK.sln项目。或者在IIS建立web网站,指向Wbm.OAuthV2Demo目录。
  • 按F5直接运行。
  • 登陆,授权,获取用户资源

使用流程

1、根据需要求修改配置文件(Wbm.OAuthV2.config)。
2、注册ApplicationKey。(参考UiPageBase.cs文件)
3、获取用户认证地址。(参考Login.aspx文件)
4、获取/缓存认证信息。(参考RedirectUri.aspx文件)
5、获取用户资源。(参考Default.aspx文件)

使用SDK

 使用方法:
 1、实例化应用,my_app为配置文件自定义应用名称,查看Wbm.OAuthV2.config文件
     var oauth = Wbm.OAuthV2SDK.OAuths.OAuthBase.CreateInstance();
     或
     var oath = new Wbm.OAuthV2SDK.OAuths.Sinas.SinaOAuth();
 
 
 2、验证认证信息缓存
     if (oauth!=null && oauth.HasCache){}
 
 
 3、获取认证参数
     var paras = oauth.GetTokenParas();
 
 
 4、请求API地址,users_show为配置文件API名称,查看Wbm.SinaV2.config文件
     var json = oauth.ApiByHttpGet("users_show", paras);
 
     返回类结果
     var user = UtilHelper.ParseJson<Wbm.OAuthV2SDK.OAuths.Sinas.Models.SinaMUser>(oauth.ApiByHttpGet("users_show", 
 
paras_2));
     string name = user.name;
 
     返回字典结果
     var dic = UtilHelper.ParseJson<Wbm.OAuthV2SDK.Entitys.ADictionary<string, object>>
     string name = dic["name"];
 
     验证API是否错误,error_code不等于0时发生错误。
     if (user.ret == 0){}if (user.error_code == 0){}
 
 
 5、显示结果

常见问题

重定向地址不匹配

redirect_uri_mismatch: 重定向地址不匹配
解决:
1、填写开放平台应用信息的回调地址。
2、填写SDK Demo文件wbm.SinaV2.config相关项redirectUri内容。
3、以上填写的的回调地址必须是一致的。修改后需要等候分钟服务器缓存。

使用人数超过限制

Applications over the unaudited use restrictions:未审核的应用使用人数超过限制
解决:
1、填写开放平台应用信息的测试用户。
2、或者应用通过审核后,就不会出来此错误。

认证过期

access_token: 有效时间为86400秒,即24小时
refresh_token: 当access_token过期后,可以去获取新access_token。
解决:
只因新浪API暂时不支持refresh_token,所以当access_token过期后,引导用户去重新登陆。

本地调试

使用iis+host:

1、添加host映射
C:\Windows\System32\drivers\etc\hosts\ 使用记事本打开,添加以下代码

127.0.0.1 apps.wobumang.com

2、iis创建网站:创建时网站主机名填写apps.wobumang.com
3、浏览器输入apps.wobumang.com就能正常访问本地的网站了。
4、vs使用附加进程,就可以调试程序。win7的进程名为w3wp.exe,xp暂时不清楚(自行研究)
5、如上述还不明白,请自行搜索。

历史版本