新浪微博SDK for .Net 2.0/3.5/4.0

新浪微博SDK for .Net 2.0/3.5/4.0

版本:支持所有版本的.net框架大小:543KB

类别:软件开发系统:WinXP, Win7, Win8, Win10

立即下载
  • 新浪微博SDK for .Net 2.0/3.5/4.0 支持所有版本的.net框架0

新浪微博SDK for .Net是最新的支持2.0/3.5以及4.0的微博sdk,可以让朋友们自己使用.net对微博的进行开发,有兴趣的朋友就来IT猫扑下载吧!

软件简介

由于最近新浪的SDK的QQ群里很多朋友都提出了让SDK支持.net2.0/3.5和vs2008的请求,所以本人本着服务社会的原则,特地发布了一个针对VS2008及.net2.0/3.5的SDK版本。与.net4.0版本的授权方式及接口调用方式一致,唯一不同的是返回结果从动态类型dynamic改变为了与之对应的实体类。在后面的更新当中,原先的SDK将同时支持返回dynamic和实体类,拭目以待~

新浪微博SDK

新浪微博SDK的使用

第一步,初始化客户端

如果用户还未进行授权的情况

使用微博开放平台后台中提供的appkey,appsecret以及回调地址callback_url来初始化客户端。

var openAuth = new SinaWeiboClient("<appkey>", "<appsecret>", "<callback_url>");

然后取得授权页面地址,并访问该地址进行授权,并获得Authorization_Code

var url = openAuth.GetAuthorizationUrl();

根据返回的Code换取accessToken

openAuth.GetAccessTokenByCode("<CODE>");

if(openAuth.IsAuthorized)

{

    var accessToken = openAuth.AccessToken;

    var uid = openAuth.UID;

}

获得了AccessToken和UID后请保存好这两个数据,以后的接口调用直接使用这两个参数,就不用每次都执行第一步和第二步。

下面,就可以跳转到第二步来调用官方的API了。

当然,如果之前已经进行过授权,并且已获得AccessToken和UID,使用下面的方法来初始化客户端。

var openAuth = new SinaWeiboClient("<appkey>", "<appsecret>", "<access_token>", "<uid>");

之后就可以直接跳转到第二步来调用API了。

第二步,调用接口

这里提供了Get和Post两个方法来调用官方的API,同时提供了异步的支持。使用的时候根据官方文档的要求来选择使用Get还是Post来调用API(官方的文档中已经明确说明了调用方式)。

调用接口传参的方式有两个,一种是传一个Dictionary<string,object>类型的参数组进去,另外一个是new一个匿名类传进去,个人觉得用匿名类才会显得非常科学。

例如,调用获取当前登录用户最新微博的API

var result = openAuth.HttpGet("statuses/friends_timeline.json", 

new Dictionary<string, object>

{

    {"count", 5},

    {"page", 1},

    {"base_app" , 0}

}); //这里可以使用字典或者匿名类的方式传递参数,参数名称、大小写、参数顺序和规范请参照官方api文档

if (result.IsSuccessStatusCode)

{

    Console.WriteLine(result.Content.ReadAsStringAsync().Result);

}

另外,如果需要异步调用请参考下面的例子

// 调用获取获取用户信息api

// 参考:https://open.weibo.com/wiki/2/users/show

var response = openAuth.HttpGetAsync("users/show.json", 

//可以传入一个Dictionary<string,object>类型的对象,也可以直接传入一个匿名类。参数与官方api文档中的参数相对应

new {

    uid = openAuth.UID

});

response.ContinueWith(task =>{

    //异步处理结果

});

当然,如果使用.net4.5的话,是可以直接使用async和await关键字来简化上面的操作的。

另外,因为现在新浪官方的限制搞出了个登录验证码,所以新版的SDK就不再提供以前版本的模拟登录来获取授权(ClientLogin)方式。针对Winform和Console应用,可以引用NetDimension.OpenAuth.Winform这个类,其中提供了一个扩展方法可以在上述两种项目类型中弹出授权窗口,并在用户授权后自动获得Authorization_Code,具体操作请查看Winform和Console的示例代码。

using NetDimension.OpenAuth.Winform;

...

var form = openAuth.GetAuthenticationForm();

if (form.ShowDialog() == System.Windows.Forms.DialogResult.OK)

{

    Console.WriteLine("用户授权成功!");

    var accessToken = openAuth.AccessToken;

    var uid = openAuth.UID;

    //其他操作

    //...

}

else

{

    Console.WriteLine("用户授权失败!");

}

更新内容

新增Entities命名空间

为了支持老版本.net新增了N个实体类型

使用JSON.net作为结果的反序列化载体

与.net4.0版本API返回结果从dynamic变为class

目前为alpha版本,欢迎测试

压缩包里已经内置对于版本的JSON.net发行版本,无需自行下载。

VS2005理论上是支持的,只是不支持var关键字,写起代码来要死人的哈!

后面会把.net4.0实体类版和动态类型版本进行整合,目前各位按需下载吧

查看全部

更新时间:2017-11-20
厂商名称:新浪公司
包名:
MD5:
权限须知点击查看
权限管理须知关闭
玩家评论 QQ群号:203046401
我要跟贴
    取消
    猜你喜欢
      新浪公司开发者其他应用
      同类推荐
      热门精品
      显示全部+最新应用