Sina微博应用开发指南

本文介绍了API平台的开发流程,包括申请APPKEY、应用创建及发布流程,并提供了SDK简介及作用、授权访问数据的方式(Basicauth和OAUTH认证)、访问匿名接口的方法以及接口数据的缓存策略。此外,文章还提供了避免ratelimit的建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

API平台应用日益丰富,为了让开发者更容易了解开发流程;为了规范API的接口,需要制定开发规范;为了对开发者进行一些深层次的指导,让开发者怎样来最优的访问API接口,特此制定开发流程技术规范与指南。

开发流程

申请APPKEY

  1. 进入http://open.t.sina.com.cn
  2. 如果您有新浪微博账户,可以直接登录,没有则注册一个微博账户后登录
  3. 登录后进入我的应用,创建一个应用
  4. 创建完成后会生成对应的appkey,app_secret,记住:您的app_key别对外泄露。

应用创建及发布流程

应用的创建及发布包括下面的流程,开发者可以根据应用当前的状态进行相应的操作

xinshou-liucheng.png


开发指南

SDK简介及作用

SDK是特定语言实现的一个可以通用的API使用的工具,SDK实现了新浪开放平台的全部或大部分接口,以便开发者不用关心API接口细节,认证实现等,可以直接调用接口完成特定的功能。支持新浪微博开放平台接口的SDK语言包括Adobe air,c++,c#,java,php,python,ios等,具体请参考SDK列表页面

如何通过授权访问数据

微博开放平台对外支持两种用户认证方式,Basic auth 以及OAUTH认证微博开放平台对外支持两种用户认证方式,Basic auth 以及OAUTH认证

Basic auth
通过设置http的消息头带上用户名密码
具体设置如下
设置消息头的Authonrization的值为:
Basic base64("uid:password")
Curl使用Basic auth获取数据样例
curl -v -u uid:pwd " http://api.t.sina.com.cn/users/show.xml?source=appkey"
OAUTH认证
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。
关于OAUTH协议可以参考  http://oauth.net
使用OAUTH认证来获取微博数据介绍详细见: OAuth

如何访问匿名接口

为了方便一些应用在没有用户认证情况下需要获取一些数据,微博开放平台提供了一些匿名访问接口。

匿名访问时必须带上参数source=appkey(您申请时获取到的appkey值)
匿名访问样例
curl " http://api.t.sina.com.cn/statuses/public_timeline.xml?source=appkey"
现开放的匿名接口如下
uri接口说明限制
/statuses/public_timeline获取最新微博只返回最新的20条微博
/statuses/user_timeline获取用户微博支持按screen_name来获取
/statuses/counts获取微博的转发数评论数 
/statuses/followers获取粉丝列表 
/users/show获取某用户信息支持按screen_name来获取
/search搜索微博最多返回20条
/statuses/search搜索微博最多返回20条
/users/search搜索微博用户最多返回20条


接口数据如何适当的缓存

在您的应用中,在正常业务需要的情况下,尽量减少请求量,减少请求接口返回数据,有必要缓存一些已经获取到的数据,来提高应用的效率和体验。下面一些场景,可供参考:

获取/statuses/friends_timeline(用户首页)
  1. 第一次请求后,缓存下请求内容
  2. 下一次刷新的时候使用since_id(值为前一次请求的最大微博id)来获取更新
获取/statuses/followers(用户粉丝)
  1. 第一次请求后,缓存下请求内容
  2. 当获取/statuses/unread接口有新粉丝的时候,则重新获取,没有则不变更
  3. 完成后调用/statuses/reset_count来清除消息提醒
获取/direct_messages(用户私信)
  1. 第一次请求后,缓存下请求内容
  2. 当获取/statuses/unread接口有新私信的时候,则重新获取,没有则不变更
  3. 完成后调用/statuses/reset_count来清除消息提醒
获取/statuses/mentions(用户提到)
  1. 第一次请求后,缓存下请求内容
  2. 当获取/statuses/unread接口有新粉丝的时候,则重新获取,没有则不变更
  3. 完成后调用/statuses/reset_count来清除消息提醒
对很少变动的数据缓存
  1. 用户昵称,头像很少更改,可对用户昵称,头像做一个较长的缓存
  2. 表情数据 很少更改,可以缓存一个很长的缓存

如何避免rate limit

微博开放平台会对每个应用的用户有一个频率限制,怎样来让用户的操作不达到频率限制呢?下面有一个简单的样例,参考下:

  1. 确定哪些需要定时访问的接口,每个接口做一个优先级,访问的频率做为一个变量
  2. 计算下一定要访问的接口数据量
  3. 预留给用户一定的更新(发微博,私信等)
  4. 使用Account/rate_limit_status查看当前appkey所能支持的每小时的最大访问量,根据此访问量来确定频率的值
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在 IT 领域,文档格式转换是常见需求,尤其在处理多种文件类型时。本文将聚焦于利用 Java 技术栈,尤其是 Apache POI 和 iTextPDF 库,实现 doc、xls(涵盖 Excel 2003 及 Excel 2007+)以及 txt、图片等格式文件向 PDF 的转换,并实现在线浏览功能。 先从 Apache POI 说起,它是一个强大的 Java 库,专注于处理 Microsoft Office 格式文件,比如 doc 和 xls。Apache POI 提供了 HSSF 和 XSSF 两个 API,其中 HSSF 用于读写老版本的 BIFF8 格式(Excel 97-2003),XSSF 则针对新的 XML 格式(Excel 2007+)。这两个 API 均具备读取和写入工作表、单元格、公式、样式等功能。读取 Excel 文件时,可通过创建 HSSFWorkbook 或 XSSFWorkbook 对象来打开相应格式的文件,进而遍历工作簿中的每个 Sheet,获取行和列数据。写入 Excel 文件时,创建新的 Workbook 对象,添加 Sheet、Row 和 Cell,即可构建新 Excel 文件。 再看 iTextPDF,它是一个用于生成和修改 PDF 文档的 Java 库,拥有丰富的 API。创建 PDF 文档时,借助 Document 对象,可定义页面尺寸、边距等属性来定制 PDF 外观。添加内容方面,可使用 Paragraph、List、Table 等元素将文本、列表和表格加入 PDF,图片可通过 Image 类加载插入。iTextPDF 支持多种字体和样式,可设置文本颜色、大小、样式等。此外,iTextPDF 的 TextRenderer 类能将 HTML、
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值