阅读:68559次   评论:84条   更新时间:2011-10-28    
ITeye目前提供如下的API,更多API将会陆续推出。

(文档编写中...)

用户认证 Top

目前所有的API都需要认证,验证方式为HTTP Basic  Access Authentication

如果你的系统有curl,可以用curl来非常简单地来尝试这些API,以用户认证的API为例子:

curl -u 用户名:密码 http://api.iteye.com/api/auth/verify


认证成功返回JSON格式字符串:
{"domain": "博客子域名", "name": "用户名", "id": 用户ID}

认证失败返回字符串:
error.auth.fail
对应的HTTP Response Code为401

为了避免暴力破解密码,如果某个IP的连续认证错误超过6次,在一个小时内将会无法进行认证,返回字符串:
error.auth.over.limit
对应的HTTP Response Code为401

为了避免对服务器过大压力,限制单个IP的单个用户请求,每小时不能超过300次,超过的用户在一小时内调用任何API都会返回字符串:
error.api.over.limit
对应的HTTP Response Code为400

闲聊API Top

基本数据参数说明
返回值中如果包含闲聊记录,统一都是JSON格式的字符串,有如下属性
id: 		闲聊ID
created_at: 	创建时间
body:		闲聊内容
user:		闲聊发布者,属性如下
	name:	用户名
	logo:	头像文件路径(最大宽高150x150),如果要获取缩略图,路径为xxx-thumb.jpg(最大宽高48x48)
	domain: 用户的博客子域名
receiver:	闲聊接收者,属性同user,可能为空
reply_to_id:	回复某条闲聊ID,可能为空
via:		通过什么发布

返回值每页显示30条闲聊记录
可选参数的统一定义:
last_id: 只抓取大于这个id的闲聊记录
page: 抓取第N页记录

闲聊一下
URL: http://api.iteye.com/api/twitters/list
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

我的闲聊
URL: http://api.iteye.com/api/twitters/my
返回值: 包含闲聊记录的JSON格式字符串 (数组格式)
可选参数: last_id, page

@我的
URL: http://api.iteye.com/api/twitters/replies
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

全站闲聊
URL: http://api.iteye.com/api/twitters/all
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

发布新闲聊
URL: http://api.iteye.com/api/twitters/create
返回值: 新发布成功的闲聊记录的JSON格式字符串
必需参数:
body: 闲聊内容
可选参数:
reply_to_id: 回复某条闲聊的id
via: 通过什么发布

删除闲聊
URL: http://api.iteye.com/api/twitters/destroy
返回值: 成功删除的闲聊id,如果失败,返回"error.record.not.found"字符串

通过ID获取闲聊记录
URL: http://api.iteye.com/api/twitters/show
必需参数:
id: 你需要获取的闲聊id,如果要一次获取多个记录,可以用逗号分隔传递(id=1,2,3),最多支持30个id
返回值:
找不到任何记录,返回"error.record.not.found"字符串
获取一条记录,返回该闲聊记录的JSON格式字符串
获取多条记录,多条闲聊记录的JSON格式字符串(数组格式)

用户收藏API Top

基本数据参数说明
返回值中如果包含收藏记录,统一都是JSON格式的字符串,有如下属性
id:		收藏ID
url:		收藏的链接
title:		收藏的标题
description:	描述
cached_tag_list:标签(多个标签用半角英文逗号隔开)
public:		代表是公开收藏还是私人收藏
created_at:	添加该收藏的时间


列出用户收藏
URL: http://api.iteye.com/api/user_favorites/list
返回值: 包含用户收藏的JSON格式字符串(数组格式)
注意:目前是全部列出用户的收藏数据,如果用户收藏非常多的话,速度可能会比较慢,建议一次获取以后进行缓存。以后可能会加入分页的功能。

新加收藏
URL: http://api.iteye.com/api/user_favorites/create
返回值: 添加成功的用户收藏的JSON格式字符串
必需参数:
url: 收藏文章的链接
title: 收藏文章的标题
可选参数:
description: 描述
tag_list: 标签(多个标签用半角英文逗号隔开)
share: 是否公开和大家共享,用false代表不公开(默认公开)

更新收藏
URL: http://api.iteye.com/api/user_favorites/update
返回值: 更新成功的用户收藏的JSON格式字符串,如果找不到对应id对应的数据,返回"error.record.not.found"字符串
必需参数:
id: 更新用户收藏的ID
其他参数同“新加收藏”

删除收藏
URL: http://api.iteye.com/api/user_favorites/destroy
返回值: 删除成功的记录id,如果找不到对应id对应的数据,返回"error.record.not.found"字符串
必需参数:
id: 删除用户收藏的ID

站内短信API Top

基本数据参数说明
返回值中如果包含站内短信记录,统一都是JSON格式的字符串,有如下属性
id: 		短信ID
created_at: 	创建时间
system_notice:	是否系统短信的标记
has_read:	是否已读的标记
attach:		是否有附件的标记
title:		短信标题
plain_body:	短信内容(已经去除HTML标签)
sender:		短信发送者,属性如下
	name:	用户名
	logo:	头像文件路径(最大宽高150x150),如果要获取缩略图,路径为xxx-thumb.jpg(最大宽高48x48)
	domain: 用户的博客子域名
receiver:	闲聊接收者,属性同sender


收件箱
URL: http://api.iteye.com/api/messages/inbox
返回值: 包含闲聊记录的JSON格式字符串(数组格式,每页15条记录)
可选参数:
last_id: 只抓取大于这个id的站内短信记录
page: 抓取第N页记录
注意:调用这个方法以后,如果返回值中有包含未读短信,在下一次调用的时候将会标记为已读

发送站内短信
URL: http://api.iteye.com/api/messages/create
返回值: 新发送成功短信的JSON格式字符串,如果失败,返回"error.具体的错误信息"字符串
必需参数:
title: 短信标题
body: 短信内容
receiver_name: 收件人用户名

回复站内短信
URL: http://api.iteye.com/api/messages/reply
返回值: 新回复成功短信的JSON格式字符串,如果失败,返回"error.具体的错误信息"字符串
必需参数:
id: 要回复的短信ID
title: 短信标题
body: 短信内容

删除站内短信
URL: http://api.iteye.com/api/messages/destroy
返回值: 成功删除的短信id,如果失败,返回"error.record.not.found"字符串
必需参数:
id: 要删除的短信ID

疑难问题 Top

1、用curl测试成功,但是用Java编写程序发现失败,说拒绝连接

通过应用程序访问API的时候,请在User-Agent信息上面声明:"JavaEye API Client"




评论 共 84 条 请登录后发表评论
54 楼 javaxin 2010-06-23 23:34
53 楼 diffuser 2010-06-09 22:30
为什么我用httpclient去获得信息竟然得到的是如下的内容??

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" dir="ltr">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta name="keyword" content="JavaEye,IT,开发,交流,社区,java, ruby, ajax, agile" />
    <title>您的访问请求被拒绝 - JavaEye技术社区</title>
    <style type="text/css">
      .clearfix:after {
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
      }
      .clearfix {
        display:block;
      }
      .left {
        float: left;
      }
      h1 {font-size: 20px;color: #6293BB;}
      p  {font-size: 14px;color: #6293BB;}
    </style>
  </head>
  <body>
    <div style="padding:50px 0 0 300px">
      <h1>您的访问请求被拒绝</h1>
    </div>
    <div class="clearfix">
      <div class="left" style="padding-left:120px">
        <img src="/images/filenotfound.jpg" width="128" height="128" />
      </div>
      <div class="left" style="width:700px;padding:30px 0 0 30px">
        <p>您可能使用了网络爬虫抓取JavaEye网站页面!</p>
        <p>JavaEye网站不允许您使用网络爬虫对JavaEye进行恶意的网页抓取,请您立刻停止该抓取行为!</p>
        <p>如果您的网络爬虫不属于恶意抓取行为,希望JavaEye网站允许你进行网页抓取,请和JavaEye管理员联系,取得授权: webmaster<img src='/images/email.gif' alt="Email" />support.javaeye.com</p>
        <p>如果您确实使用浏览器访问,但是被错误的识别为网络爬虫,请将您浏览器发送的“User Agent”信息告知我们,帮助我们解决错误: webmaster<img src='/images/email.gif' alt="Email" />support.javaeye.com</p>
      </div>
    </div>
    <div style="padding:20px 0 0 500px">
      <a href="http://www.javaeye.com"><img src='/images/logo_small.gif' border='0'></a>
    </div>
  </body>
</html>
52 楼 6282867 2010-06-09 11:26
也就是说可以通过API把这些功能嵌入到自己的网站中啊?
51 楼 huazang_2010 2010-06-06 18:11
、强大。
50 楼 morecans 2010-05-28 14:44
不知道用这个API的目的是什么
49 楼 tokay 2010-05-19 17:03
强大,都出了api
48 楼 yinter 2010-05-07 10:42
有意思,javaeye越来越强了。
47 楼 andey007518 2010-04-26 16:38
做个示范嘛。怎么用呢,TKS
46 楼 mrvito 2010-04-23 23:16
来看一下!好久都不写程序了呢
45 楼 linuxbean 2010-03-04 17:27
好东西,仔细看看。
44 楼 xici_magic 2009-12-16 15:04
说实话 看的不是很明白。
43 楼 zcq100 2009-12-05 09:14
300太少了
42 楼 adapt 2009-11-09 16:31
越来越强大了
注册了这么久 也没用过!  就下了点东西
41 楼 dejehm 2009-10-18 13:43
有点不懂!
40 楼 andey007518 2009-09-19 09:46
恩,建议详细改善下,怎么网址打不开呢提供的,谢谢啦
39 楼 wangguanqiu 2009-09-16 18:19
没有关于论坛的API啊?
38 楼 wangguanqiu 2009-09-16 18:19
没有关于论坛的API啊?
37 楼 wangguanqiu 2009-09-16 18:19
没有关于论坛的API啊?
36 楼 bashenmail 2009-08-31 09:42
很不错吗
35 楼 tk_zhang 2009-08-21 11:48
这个研究了一下,不太明白的!
34 楼 axbyzc 2009-08-07 23:10
javaeye 越来越来强 大牛们越来越大,努力努力,好好学习,努力爬上大牛肩膀。
33 楼 mickshu 2009-08-05 19:46
javaeye 越来越来强了
32 楼 JaHunter 2009-07-22 08:36
帮助文档应该多出点好啊,这样对程序员也是非常有利的。
31 楼 fabulous 2009-07-01 15:55
有时间玩一玩。。。
30 楼 geminiyellow 2009-06-18 16:09
没有圈子API
29 楼 不是流氓 2009-06-08 16:27
300次太少了~
28 楼 wxmfly 2009-05-20 20:29
希望javaeye在open api 的路上越走越宽
27 楼 loveni 2009-05-12 09:39
新手提问:不太会用,是不是把这些url用ajax调用?
26 楼 grandboy 2009-05-11 22:30
这些API会不会同时带安全问题? 虽然限制了频繁使用。
25 楼 yunmanfan 2009-05-04 16:07
难道je要出自己的一套IDE?

发表评论

您还没有登录,请您登录后再发表评论

文章信息

Global site tag (gtag.js) - Google Analytics