西西软件园多重安全检测下载网站、值得信赖的软件下载站!
软件
软件
文章
搜索

首页 → 业内动态 → 业内资讯 → 腾讯社区开放平台.NET SDK 加快你的社区接入到腾讯社区开放平台

腾讯社区开放平台.NET SDK 加快你的社区接入到腾讯社区开放平台

相关软件相关文章发表评论 来源:西西整理时间:2011/4/24 17:33:46字体大小:A-A+

作者:西西点击:335次评论:1次标签: 腾讯

  • 类型:学生模板大小:2.8M语言:中文 评分:10.0
  • 标签:
立即下载

“QQ登录”使用户能使用QQ账号一键登录接入网站,大大降低了注册、登录的门槛。借助庞大的QQ用户群,给第三方网站带来更多新用户。已登录用户还可以将在第三方网站发布、分享的信息即时同步到QQ空间,使网站内容通过好友关系得到进一步的传播。

腾讯社区开放平台.NET SDK是基于腾讯社区开放平台的OAuth登录文档和API文档 使用C#开发的.NET 4.0的一个库,目前完整实现了腾讯社区开放平台的所有接口。可以加快你的社区接入到腾讯社区开放平台,免去大量的重复的调试开发的时间,所以我是以New BSD协议创建的开源项目,各位有同样需求的各位同仁参与建设着一个项目,项目的托管地址是http://qqconnect.codeplex.com/。

腾讯社区开放平台.NET SDK使得你调用腾讯社区开放平台的REST接口非常容易,你只需要到http://connect.opensns.qq.com/apply 申请到必须的consumer key和consumer secret,在你的申请通过了腾讯社区开放平台的审核后就可以得到。这个酷的主要特性如下:

  • 封装好了腾讯社区开放平台的OAuth协议访问腾讯社区开放平台的REST接口
  • 和腾讯社区开放平台的接口保持同步(目前只有一个接口,将来肯定会不断增加)

这个库使用Visual Studio 2010和C# 3.0构建的,主要扩展和使用到下面的开源库:

  1. DotnetOpenauth:DotNetOpenAuth 是一个 C# 开发包,用以实现 OpenID 2.0 的提供者、中继方(Relying Party)、OAuth使用者和OAuth服务提供者;同时支持 InfoCard Selector 。OAuth协议客户端的实现上参考了这个项目的代码。
  2. Jayrock:Jayrock是一个LGPL的开源的软件,实现了JSON和JSON-RPC,支持微软ASP.NET框架。具体可以参考文章:Jayrock: JSON and JSON-RPC for .NET

上面我们从高层次了解了这个SDK的实现原理,下面我们介绍如何使用这个SDK来和腾讯社区开放平台进行交互。SDK主要有两个需要关注的类QzoneSDK.Context.QzoneContext

和 QzoneSDK.Qzone。

首先我们结合【QQ登录】OAuth登录文档来说明。Qzone OAuth总体处理流程里共有七个步骤,从下面的总体流程图中可以看到:

clip_image002

左侧:为第三方网站需要做的事情。在每个绿色的方框里,标明了第三方应该调用的接口,接口主要功能及逻辑见Qzone OAuth接口说明。

右侧:为Qzone接收到第三方应用发过来的请求后做的事情。第三方请求的发送地址以及应包含的参数在接下来的单步详解中进行了说明

通过类QzoneSDK.Context.QzoneContext带上你申请的oauth_consumer_key (对应Qzone的appid)和oauth_consumer_secret (对应Qzone的appkey)到腾讯社区开放平台获取到Request Token,然后把tokenKey和tokensecret保存到Session里,后续需要使用。示例代码如下:

string key = ConfigurationManager.AppSettings["ConsumerKey"];

string secret = ConfigurationManager.AppSettings["ConsumerSecret"];

var context = new QzoneSDK.Context.QzoneContext(key, secret);

var callbackUrl = "http://localhost/account/QQCallback";

var requestToken = context.GetRequestToken(callbackUrl);

Session["requesttokenkey"] = requestToken.TokenKey;

Session["requesttokensecret"] = requestToken.TokenSecret;

var authenticationUrl = context.GetAuthorizationUrl(requestToken, callbackUrl);

return Redirect(authenticationUrl);

用户在腾讯社区开放平台上授权使用后会导向到你的网站,也就是上图的第三步,在门上述的callback 的页面上就可以获取上图第四步的参数,利用上述获得的参数调用QzoneSDK.Qzone进行第五步调用,就可以获得AccessToken,这个AccessToken,目前access_token(及其secret)是长期有效的,和某一个openid对应,目前可以支持线下获取该openid的信息。

if (Request.QueryString["oauth_vericode"] != null)

{

var requestTokenKey = Session["requesttokenkey"].ToString();

var requestTokenSecret = Session["requesttokensecret"].ToString();

var verifier = Request.QueryString["oauth_vericode"];

string key = ConfigurationManager.AppSettings["ConsumerKey"];

string secret = ConfigurationManager.AppSettings["ConsumerSecret"];

QzoneSDK.Qzone qzone = new QzoneSDK.Qzone(key, secret, requestTokenKey, requestTokenSecret, verifier);

var access = qzone.OAuthTokenKey;

var currentUser = qzone.GetCurrentUser();

var user = (BasicProfile)JsonConvert.Import(typeof(BasicProfile),currentUser);

}

上述代码还演示调用腾讯开放社区目前唯一的一个API ( get_user_info),通过Jayrock库将Json数据转换为库中定义的用户登录数据的实体BasicProfile。

 项目的下载地址:http://qqconnect.codeplex.com/releases/view/65042 

项目文档:腾讯社区开放平台教程.pdf

    读书笔记
    (97)读书笔记
    书中自有黄金屋,书中自有颜如玉,我们总能从书中学习到很多意想不到的知识,看见不一样的风景。特别是在我们的学生时代,不仅是教科书,更要涉及各种各样的课外书籍,不仅要读,还要学会做读书笔记。我们读再多,不做读书笔记,没有读后感,也相当于白读,做读书笔记的过程就相当于仔细品读的过程,而不是一目十行的略读。本合集是由西西为大家整理的读书笔记合集,欢迎有需要的朋友前来下载。读书笔记怎么写?读书笔记是人们在读...更多>>
    • 800字三国演义读后感范文

      03-13 / 59KB

      推荐理由:《三国演义》是中国古典四大名著之一。元末明初小说家罗贯中所著,是中国第一部长篇章回体历史演义小说。描
    • 500字鲁滨逊漂流记读后感范文

      03-13 / 88KB

      推荐理由:《鲁滨逊漂流记》的作者丹尼尔·笛福生活在启蒙运动时期 ,世界格局发生巨变,政治、经济都面临着巨大危机,
    • 600字爱的教育读后感(6篇)

      03-13 / 67KB

      推荐理由:这是一部献给九岁到十三岁小学生的书,是由意大利作家亚米契斯撰写的,内容新颖,情节感人至深.凡是读过这部
    • 百年孤独读后感范文

      03-13 / 65KB

      推荐理由:被誉为“再现拉丁美洲历史社会图景的鸿篇巨作”的《百年孤独》,是加西亚·马尔克斯的代表作,也是拉丁美洲
    • 四大名著之《水浒传》读后感5篇

      03-27 / 54KB

      推荐理由:《水浒传》,是中国四大名著之一,全书描写北宋末年以宋江为首的108位好汉在梁山起义,以及聚义之后接受招安
    • 绿野仙踪读后感范文(6篇)

      03-13 / 73KB

      推荐理由:《绿野仙踪》,是美国的一系列童话故事,原书于1956进入美国的公有领域。而自1960年到1986年间鲍姆的13本续

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶顶
    • 1 难过难过
    • 5 囧囧
    • 3 围观围观
    • 2 无聊无聊

    最新评论查看所有(1)条评论 >

    第 1 楼 上海 网友 网友 2026/8/30 6:30:56
    这SDK简直是个坑,文档写得跟天书似的,环境配置半天起不来。一调登录接口就报错,排查半天发现是他们自己依赖库冲突。更坑的是技术支持,问啥都答非所问,最后我直接放弃了换别家,纯纯浪费我一周工时,大家避雷

    支持( 0 ) 盖楼(回复)

    发表评论

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲