新浪微博开放平台开发步骤简介(适合新手看)

简介:

 我也是个新手,也是第一次使用开放平台做开发,刚开始感到无处下手,经过半天的摸索终于成功的调用了API,现在把这点经验介绍给新手(高手就没必要看了,当然,如果你能提些意见和建议,我感激不尽),愿同大家一起交流。

  本例介绍的是如何用API提交数据(发布一条微博)和用API获取数据(获取最新更新的20条公共微博消息),也就是官方API中的“获取下行数据集(timeline)接口”下的“statuses/public_timeline 获取最新更新的公共微博消息”和“微博访问接口”下的“statuses/update 发布一条微博信息”。

  首先你要有一个新浪微博帐号,还要申请一个app key(具体请参考http://open.t.sina.com.cn/wiki/index.php/%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%97,然后在VS中新建一个解决方案,在解决方案中添加一个类库和一个网站,并添加引用(网站引用类库)。

  由于发布微博是POST请求,获取数据是GET请求,且通过HTTP普通验证(Basic Authentication)方式授权,因此我把这些功能写在一个类中(放在类库中),代码如下(这个类参考了http://www.cnblogs.com/cmt/archive/2010/05/13/1733904.html,没有仔细考虑是否达到了通用):

 

发送请求及授权代码

 

 

  然后在类库中新建两个实体类status和user,字段与官方API中一致:

  

status实体类

 

 

user实体类

 

  好了,经过上面的步骤,准备工作已经完毕,现在开始调用API,先看发布一条微博信息吧,虽然这篇文章(http://www.cnblogs.com/cmt/archive/2010/05/13/1733904.html)中介绍了,但为了本文的完整我还是贴上我的代码吧,在类库中添加一个微博访问类MiniBlogVisit类:

 

微博访问类

 

调用其中的update方法就可以发布一条微博了哦。不过要注意的是这里的Content要用HttpUtility.UrlEncode进行编码,否则会出现乱码哦。

  再看获取最新更新的20条公共微博消息,也就是官方API中的第一个接口,这里返回的是XML数据或JSON数据,大家可根据爱好自由选择,我选择的是返回XML数据。我的方法是把返回的XML数据写入一个XML文件中,再对XML文件进行解析,代码如下:

 

获取数据代码

 

  好了,现在就是调用了,调用做的比较简单,就是一个空的Default.aspx页面,后台代码如下:

 

调用代码

  至此,全部代码已经写完,再看看完整的解决方案吧:

  运行后效果如下:

  第一次调用API,也是第一次写这么长的文章,欢迎大家多拍砖哈!!!



本文转自Artwl博客园博客,原文链接:http://www.cnblogs.com/artwl/,如需转载请自行联系原作者

相关文章
|
JSON 监控 Java
【SpringMVC】JSON数据返回及异常处理
Jackson是一个用于Java对象和JSON数据之间相互转换的开源库。它提供了一组强大的API,可以将Java对象序列化为JSON格式的字符串,也可以将JSON字符串反序列化为Java对象。Jackson库由三个核心模块组成::用于将Java对象与JSON数据进行绑定(序列化和反序列化)。它提供了一系列注解,如等,用于指定对象属性与JSON字段之间的映射关系,以及日期、时间等特殊类型的处理方式。Databind模块也提供了一些高级特性,如多态类型处理、双向引用处理等。
|
SQL 存储 数据库
基于Web技术的在线考试系统的设计与实现(论文+源码)_kaic
基于Web技术的在线考试系统的设计与实现(论文+源码)_kaic
|
Web App开发 开发者
利用chrome控制台调试post请求
利用chrome控制台调试post请求
424 0
|
Linux Shell 数据安全/隐私保护
超简单五步实现Linux虚拟机CentOS 7系统Root密码忘记重置
超简单五步实现Linux虚拟机CentOS 7系统Root密码忘记重置
1575 0
|
关系型数据库 MySQL
Mysql连接无效(invalid connection)解决方案
Mysql连接无效(invalid connection)解决方案
1713 0
Mysql连接无效(invalid connection)解决方案
|
测试技术 项目管理 前端开发
互联网项目管理流程(SOP)总结
无规矩不成方圆。 项目角色 产品经理(PM) 后台开发(RD) 前端开发(FE) 系统测试(QA) 项目周期 主要的环节包括 :需求评审、项目开发、提测、系统测试、发布上线等 序号 环节 主R(responsible) S(support) ...
5261 0
|
10月前
|
机器学习/深度学习 数据采集 存储
使用Python实现深度学习模型:智能保险风险评估
使用Python实现深度学习模型:智能保险风险评估
243 13
|
11月前
|
人工智能 网络协议 Docker
AI智能体研发之路-工程篇(三):大模型推理服务框架Ollama一键部署
AI智能体研发之路-工程篇(三):大模型推理服务框架Ollama一键部署
662 2
|
机器学习/深度学习 人工智能 PyTorch
Transformers 4.37 中文文档(三十二)(1)
Transformers 4.37 中文文档(三十二)
159 0
channelSftp.put(InputStream src, String dst, int mode);里的mode都是什么类型的
【5月更文挑战第15天】channelSftp.put(InputStream src, String dst, int mode);里的mode都是什么类型的
466 2