Statuses/show

跳转到: 导航, 搜索
(statuses/show)
 
(未显示6个用户的33个中间版本)
第1行: 第1行:
== statuses/show ==
+
{{api_desc2|
按指定ID获取微薄文章,文章的作者信息将同时返回。
+
uri=statuses/show/:id|
 
+
desc=根据ID获取单条微博消息,以及该微博消息的作者信息。|
Returns a single status, specified by the id parameter below. The status's author will be returned inline.
+
format=XML/JSON|
 
+
httpMethod=GET|
=== URL: ===
+
needAuth=true|
curl http://api.t.sina.com.cn/statuses/show/id.format
+
rateLimit=true|
 +
params={{api_args|:id|true|int64|要获取的微博消息ID,该参数为REST风格的参数}}|
 +
getParam=|
 +
postParam=|
 +
result=
 +
===XML示例===
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<status>
 +
  <created_at>Fri Oct 09 11:32:31 +0800 2009</created_at>
 +
  <id>456</id>
 +
  <text>是这样操作,但是功能表现上还要调整。</text>
 +
  <source>
 +
    <a href="/">微博开放平台接口</a>
 +
  </source>
 +
  <favorited>false</favorited>
 +
  <truncated>false</truncated>
 +
  <geo/>
 +
  <in_reply_to_status_id/>
 +
  <in_reply_to_user_id/>
 +
  <in_reply_to_screen_name/>
 +
  <user>
 +
    <id>1773020834</id>
 +
    <screen_name>189_测试2</screen_name>
 +
    <name>189_测试2</name>
 +
    <province>0</province>
 +
    <city>0</city>
 +
    <location/>
 +
    <description/>
 +
    <url/>
 +
    <profile_image_url>http://tp3.sinaimg.cn/1773020834/50/1281023809/1</profile_image_url>
 +
    <domain/>
 +
    <gender>m</gender>
 +
    <followers_count>34</followers_count>
 +
    <friends_count>28</friends_count>
 +
    <statuses_count>338</statuses_count>
 +
    <favourites_count>0</favourites_count>
 +
    <created_at>Thu Jul 29 00:00:00 +0800 2010</created_at>
 +
    <following>false</following>
 +
    <verified>false</verified>
 +
    <allow_all_act_msg>false</allow_all_act_msg>
 +
    <geo_enabled>true</geo_enabled>
 +
  </user>
 +
</status>
 +
</pre>
 +
===JSON示例===
 +
<pre>
 +
{
 +
    "created_at" : "Fri Oct 09 11:32:31 +0800 2009",
 +
    "text" : "是这样操作,但是功能表现上还要调整。",
 +
    "truncated" : false,
 +
    "in_reply_to_status_id" : "",
 +
    "in_reply_to_screen_name" : "",
 +
    "geo" : null,
 +
    "user" :
 +
    {
 +
        "name" : "189_测试2",
 +
        "domain" : "",
 +
        "geo_enabled" : true,
 +
        "followers_count" : 34,
 +
        "statuses_count" : 338,
 +
        "favourites_count" : 0,
 +
        "city" : "0",
 +
        "description" : "",
 +
        "verified" : false,
 +
        "id" : 1773020834,
 +
        "gender" : "m",
 +
        "friends_count" : 28,
 +
        "screen_name" : "189_测试2",
 +
        "allow_all_act_msg" : false,
 +
        "following" : false,
 +
        "url" : "",
 +
        "profile_image_url" : "http://tp3.sinaimg.cn/1773020834/50/1281023809/1",
 +
        "created_at" : "Thu Jul 29 00:00:00 +0800 2010",
 +
        "province" : "0",
 +
        "location" : ""
 +
    },
 +
    "favorited" : false,
 +
    "in_reply_to_user_id" : "",
 +
    "id" : 456,
 +
    "source" : "<a href=\"/\" rel=\"nofollow\">微博开放平台接口</a>"
 +
}
 +
</pre>|
 +
useAge=如果:id参数输入一个不存在的微博ID,则返回400错误,提示"40031:Error: target weibo does not exist!"|
 +
otherInfo=
 +
===Java示例===
 +
请从 [[SDK | 微博SDK开发包下载]] 下载Java SDK<br>
 +
代码示例如下:
 +
package weibo4j.examples.statuses;
 
   
 
   
=== Formats: ===
+
  import java.util.List;
xml, json, rss, atom
+
import weibo4j.Paging;
 +
import weibo4j.Status;
 +
import weibo4j.Weibo;
 
   
 
   
=== HTTP Method(s): ===
+
public class GetStatus {
GET
+
/**
+
* 获取单条ID的微博信息,作者信息将同时返回
=== Requires Authentication (about authentication): ===
+
* @param args
false, unless the author of the status is protected
+
*/
+
public static void main(String[] args) {
=== API rate limited (about rate limiting): ===
+
System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
true
+
    System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
 
+
        try {
=== Parameters: ===
+
        Weibo weibo = getWeibo(true,args);
* id. 必须参数,要获取的微薄信息ID 
+
        List<Status> list = weibo.getUserTimeline(args[2], new Paging(1).count(4));
o Example: http://api.t.sina.com.cn/statuses/show/123.xml
+
        if(list.size() > 0) {
 
+
        Status status = weibo.showStatus(list.get(0).getId());
* id. Required. The numerical ID of the status to retrieve.
+
            System.out.println( status.getId() + " : "+status.getText());
o Example: http://api.t.sina.com.cn/statuses/show/123.xml
+
        }
 
+
} catch (Exception e) {
=== Response ===
+
e.printStackTrace();
(about return values): XML example (truncated):
+
}
<?xml version="1.0" encoding="UTF-8"?>
+
}
  <status>
+
  <created_at>Tue Apr 07 22:52:51 +0000 2009</created_at>
+
private static Weibo getWeibo(boolean isOauth,String ... args) {
  <id>1472669360</id>
+
Weibo weibo = new Weibo();
  <text>At least I can get your humor through tweets. RT @abdur: I don't mean this in a bad way, but genetically speaking your a cul-de-sac.</text>
+
if(isOauth) {//oauth验证方式 args[0]:访问的token;args[1]:访问的密匙
  <source><a href="http://www.tweetdeck.com/">TweetDeck</a></source>
+
weibo.setToken(args[0], args[1]);
  <truncated>false</truncated>
+
}else {//用户登录方式
  <in_reply_to_status_id></in_reply_to_status_id>
+
    weibo.setUserId(args[0]);//用户名/ID
  <in_reply_to_user_id></in_reply_to_user_id>
+
weibo.setPassword(args[1]);//密码
  <favorited>false</favorited>
+
}
  <in_reply_to_screen_name></in_reply_to_screen_name>
+
return weibo;
  <user>
+
}
    <id>1401881</id>
+
}
    <name>Doug Williams</name>
+
===PHP示例===
    <screen_name>dougw</screen_name>
+
请从 [[SDK | 微博SDK开发包下载]] 处下载PHP SDK(支持OAuth验证之版本)<br>  
    <location>San Francisco, CA</location>
+
代码示例如下:
    <description>Twitter API Support. Internet, greed, users, dougw and opportunities are my passions.</description>
+
<pre>
    <profile_image_url>http://s3.amazonaws.com/twitter_production/profile_images/59648642/avatar_normal.png</profile_image_url>
+
//Statuses/show
    <url>http://www.igudo.com</url>
+
//获取单条ID的微博信息,作者信息将同时返回
    <protected>false</protected>
+
$c = new WeiboClient( WB_AKEY ,
    <followers_count>1027</followers_count>
+
                      WB_SKEY ,
    <profile_background_color>9ae4e8</profile_background_color>
+
                      $_SESSION['last_key']['oauth_token'] ,
    <profile_text_color>000000</profile_text_color>
+
                      $_SESSION['last_key']['oauth_token_secret']  );
    <profile_link_color>0000ff</profile_link_color>
+
    <profile_sidebar_fill_color>e0ff92</profile_sidebar_fill_color>
+
    <profile_sidebar_border_color>87bc44</profile_sidebar_border_color>
+
    <friends_count>293</friends_count>
+
    <created_at>Sun Mar 18 06:42:26 +0000 2007</created_at>
+
    <favourites_count>0</favourites_count>
+
    <utc_offset>-18000</utc_offset>
+
    <time_zone>Eastern Time (US & Canada)</time_zone>
+
    <profile_background_image_url>http://s3.amazonaws.com/twitter_production/profile_background_images/2752608/twitter_bg_grass.jpg</profile_background_image_url>
+
    <profile_background_tile>false</profile_background_tile>
+
    <statuses_count>3390</statuses_count>
+
    <notifications>false</notifications>
+
    <following>false</following>
+
    <verified>true</verified>
+
  </user>
+
  <geo/>
+
  </status>
+
 
+
  
=== Usage examples: ===
+
$u_id = "用户ID";
cURL (about cURL):
+
$msg = $c->user_timeline($u_id);
curl http://api.t.sina.com.cn/statuses/show/1472669360.xml
+
if ($msg === false || $msg === null){
 +
echo "Error occured";
 +
return false;
 +
}
 +
if (isset($msg['error_code']) && isset($msg['error'])){
 +
echo ('Error_code: '.$msg['error_code'].';  Error: '.$msg['error'] );
 +
return false;
 +
}
 +
if (count($msg)>0){
 +
$t_id = $msg[0]['id'];
 +
$msg = $c->show_status($t_id);
 +
if ($msg === false || $msg === null){
 +
echo "Error occured";
 +
return false;
 +
}
 +
if (isset($msg['error_code']) && isset($msg['error'])){
 +
echo ('Error_code: '.$msg['error_code'].';  Error: '.$msg['error'] );
 +
return false;
 +
}
 +
if (isset($msg['id']) && isset($msg['text'])){
 +
echo($msg['id'].' : '.$msg['text']);
 +
}
 +
}
 +
</pre>
 +
}}

2012年9月24日 (一) 11:35的最后版本

目录

statuses/show/:id

根据ID获取单条微博消息,以及该微博消息的作者信息。

URL

http://api.t.sina.com.cn/statuses/show/:id.(json%7Cxml)

支持格式

XML/JSON

HTTP请求方式

GET

是否需要登录

true
关于授权机制,参见授权机制声明

请求数限制

true
关于请求数限制,参见接口访问权限说明

请求参数

  必选 类型及范围 说明
source true string 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。(采用OAuth授权方式不需要此参数)
:id true int64 要获取的微博消息ID,该参数为REST风格的参数

注意事项

如果:id参数输入一个不存在的微博ID,则返回400错误,提示"40031:Error: target weibo does not exist!"

返回结果

XML示例

<?xml version="1.0" encoding="UTF-8"?>
<status>
  <created_at>Fri Oct 09 11:32:31 +0800 2009</created_at>
  <id>456</id>
  <text>是这样操作,但是功能表现上还要调整。</text>
  <source>
    <a href="/">微博开放平台接口</a>
  </source>
  <favorited>false</favorited>
  <truncated>false</truncated>
  <geo/>
  <in_reply_to_status_id/>
  <in_reply_to_user_id/>
  <in_reply_to_screen_name/>
  <user>
    <id>1773020834</id>
    <screen_name>189_测试2</screen_name>
    <name>189_测试2</name>
    <province>0</province>
    <city>0</city>
    <location/>
    <description/>
    <url/>
    <profile_image_url>http://tp3.sinaimg.cn/1773020834/50/1281023809/1</profile_image_url>
    <domain/>
    <gender>m</gender>
    <followers_count>34</followers_count>
    <friends_count>28</friends_count>
    <statuses_count>338</statuses_count>
    <favourites_count>0</favourites_count>
    <created_at>Thu Jul 29 00:00:00 +0800 2010</created_at>
    <following>false</following>
    <verified>false</verified>
    <allow_all_act_msg>false</allow_all_act_msg>
    <geo_enabled>true</geo_enabled>
  </user>
</status>

JSON示例

{
    "created_at" : "Fri Oct 09 11:32:31 +0800 2009",
    "text" : "是这样操作,但是功能表现上还要调整。",
    "truncated" : false,
    "in_reply_to_status_id" : "",
    "in_reply_to_screen_name" : "",
    "geo" : null,
    "user" : 
    {
        "name" : "189_测试2",
        "domain" : "",
        "geo_enabled" : true,
        "followers_count" : 34,
        "statuses_count" : 338,
        "favourites_count" : 0,
        "city" : "0",
        "description" : "",
        "verified" : false,
        "id" : 1773020834,
        "gender" : "m",
        "friends_count" : 28,
        "screen_name" : "189_测试2",
        "allow_all_act_msg" : false,
        "following" : false,
        "url" : "",
        "profile_image_url" : "http://tp3.sinaimg.cn/1773020834/50/1281023809/1",
        "created_at" : "Thu Jul 29 00:00:00 +0800 2010",
        "province" : "0",
        "location" : ""
    },
    "favorited" : false,
    "in_reply_to_user_id" : "",
    "id" : 456,
    "source" : "<a href=\"/\" rel=\"nofollow\">微博开放平台接口</a>"
}

其他

Java示例

请从 微博SDK开发包下载 下载Java SDK
代码示例如下:

package weibo4j.examples.statuses;

import java.util.List;
import weibo4j.Paging;
import weibo4j.Status;
import weibo4j.Weibo;

public class GetStatus {
	/**
	 * 获取单条ID的微博信息,作者信息将同时返回
	 * @param args
	 */
	public static void main(String[] args) {
		System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
   	System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
       try {
       	Weibo weibo = getWeibo(true,args);
       	List<Status> list = weibo.getUserTimeline(args[2], new Paging(1).count(4));
       	if(list.size() > 0) {
       		Status status = weibo.showStatus(list.get(0).getId());
           	System.out.println( status.getId() + "  : "+status.getText());
       	}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	private static Weibo getWeibo(boolean isOauth,String ... args) {
		Weibo weibo = new Weibo();
		if(isOauth) {//oauth验证方式 args[0]:访问的token;args[1]:访问的密匙
			weibo.setToken(args[0], args[1]);
		}else {//用户登录方式
    		weibo.setUserId(args[0]);//用户名/ID
			weibo.setPassword(args[1]);//密码
		}
		return weibo;
	}
}

PHP示例

请从 微博SDK开发包下载 处下载PHP SDK(支持OAuth验证之版本)
代码示例如下:

//Statuses/show
//获取单条ID的微博信息,作者信息将同时返回
$c = new WeiboClient( WB_AKEY , 
                      WB_SKEY , 
                      $_SESSION['last_key']['oauth_token'] , 
                      $_SESSION['last_key']['oauth_token_secret']  );

$u_id = "用户ID";
$msg = $c->user_timeline($u_id);
if ($msg === false || $msg === null){
	echo "Error occured";
	return false;
}
if (isset($msg['error_code']) && isset($msg['error'])){
	echo ('Error_code: '.$msg['error_code'].';  Error: '.$msg['error'] );
	return false;
}
if (count($msg)>0){
	$t_id = $msg[0]['id'];
	$msg = $c->show_status($t_id);
	if ($msg === false || $msg === null){
		echo "Error occured";
		return false;
	}
	if (isset($msg['error_code']) && isset($msg['error'])){
		echo ('Error_code: '.$msg['error_code'].';  Error: '.$msg['error'] );
		return false;
	}
	if (isset($msg['id']) && isset($msg['text'])){
		echo($msg['id'].' : '.$msg['text']);
	}
}
文档更新时间: 2012-09-24