Statuses/update

跳转到: 导航, 搜索
(返回结果)
(statuses/update)
第2行: 第2行:
 
发布一条微博信息。请求必须用POST方式提交。为防止重复,发布的信息与当前最新信息一样话,将会被忽略。
 
发布一条微博信息。请求必须用POST方式提交。为防止重复,发布的信息与当前最新信息一样话,将会被忽略。
  
=== URL===
+
{{Api_url|statuses/update}}
http://api.t.sina.com.cn/statuses/update.format
+
  
=== 格式===
+
{{Api_format|xml, json}}
xml, json
+
 
+
=== HTTP请求方式===
+
POST
+
+
=== 是否需要身份验证===
+
true
+
 
   
 
   
=== 请求数限制===
+
{{Api_req|POST|true|true}}
true
+
  
 
=== 请求参数===
 
=== 请求参数===

2010年9月7日 (二) 15:55的版本

目录

statuses/update

发布一条微博信息。请求必须用POST方式提交。为防止重复,发布的信息与当前最新信息一样话,将会被忽略。

URL

http://api.t.sina.com.cn/statuses/update.format

格式

xml, json

HTTP请求方式

POST

是否需要登录

true

请求数限制

true

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

请求参数

  • status. 必填参数, 要更新的微博信息。必须做URLEncode,信息内容部超过140个汉字,为空返回400错误。
  • in_reply_to_status_id. 可选参数,@ 需要回复的微博信息ID, 这个参数只有在微博内容以 @username 开头才有意义。(即将推出)。
  • lat. 可选参数,纬度,发表当前微博所在的地理位置,有效范围 -90.0到+90.0, +表示北纬。只有用户设置中geo_enabled=true时候地理位置才有效。(仅对受邀请的合作开发者开放)
  • long. 可选参数,经度。有效范围-180.0到+180.0, +表示东经。(仅对受邀请的合作开发者开放)

使用说明

  • 如果没有登录或超过发布上限,将返回403错误
  • 如果in_reply_to_status_id不存在,将返回500错误
  • 系统将忽略重复发布的信息。每次发布将比较最后一条发布消息,如果一样将被忽略。因此用户不能连续提交相同信息。

返回结果

注意geo信息仅对有地理位置的微博才有返回 XML示例:

<?xml version="1.0" encoding="UTF-8"?>
 <status>
   <created_at>Tue Dec 15 13:08:23 +0800 2009</created_at>
   <id>2</id>
   <text>莱斯科特头上有个月牙型的伤疤,要是他去扮演包公的话可以省去一笔包装费</text>
   <source>
     <a href="http://t.sina.com.cn">Web</a>
   </source>
   <favorited>false</favorited>
   <truncated>false</truncated>
   <geo xmlns:georss="http://www.georss.org/georss">
     <georss:point>23.12 -122.39697</georss:point>
   </geo>
   <in_reply_to_status_id></in_reply_to_status_id>
   <in_reply_to_user_id></in_reply_to_user_id>
   <in_reply_to_screen_name></in_reply_to_screen_name>
   <user>
     <id>135272</id>
     <screen_name>bbb</screen_name>
     <name>ddd</name>
     <province>13</province>
     <city>1000</city>
     <location>河北</location>
     <description>巾帼不让傻须眉。</description>
     <url>http://blog.sina.com.cn</url>
     <profile_image_url>http://tp4.sinaimg.cn/1352721827/50/1265540250</profile_image_url>
     <domain>maplelee0723</domain>
     <gender>f</gender>
     <followers_count>52</followers_count>
     <friends_count>23</friends_count>
     <statuses_count>54</statuses_count>
     <favourites_count>0</favourites_count>
     <created_at>Tue Jan 26 00:00:00 +0800 2010</created_at>
     <following>false</following>
     <verified>false</verified>
     <allow_all_act_msg>false</allow_all_act_msg>
     <geo_enabled>false</geo_enabled>
   </user>
 </status>

JSON示例:

   {"created_at":"Wed Jan 06 19:38:33 +0800 2010",
   "id":142280,
   "text":"111111111111111111111",
   "source":"<a id=\"0\" href=\"http://t.sina.com.cn/\" rel=\"nofollow\">Web</a>",
   "favorited":false,
   "truncated":false,
   "in_reply_to_status_id":"",
   "in_reply_to_user_id":"",
   "in_reply_to_screen_name":"",
   "geo":{"type": "Point","coordinates": [23.12 -122.39697]},
   "user":{"id":11057,
       "screen_name":"name_11057",
       "name":"name_11057",
       "province":"0",
       "city":"0",
       "location":"",
       "description":"",
       "url":"",
       "profile_image_url":"http://tp2.sinaimg.cn/11057/50/0",
       "domain":"11057",
       "followers_count":19,
       "friends_count":101,
       "statuses_count":0,
       "favourites_count":3,
       "created_at":"Thu Jan 01 08:00:00 +0800 1970",
       "following":false,
       "geo_enabled":false,
       "verified":false}
   }

字段说明 - status

  • created_at: 创建时间
  • id: 微博ID
  • text: 微博信息内容
  • source: 微博来源
  • favorited: 是否已收藏
  • truncated: 是否被截断
  • in_reply_to_status_id: 回复ID
  • in_reply_to_user_id: 回复人UID
  • in_reply_to_screen_name: 回复人昵称
  • thumbnail_pic: 缩略图
  • bmiddle_pic: 中型图片
  • original_pic:原始图片
  • user: 作者信息
  • retweeted_status: 转发的博文,内容为status,如果不是转发,则没有此字段

字段说明 - user

  • id: 用户UID
  • screen_name: 微博昵称
  • name: 友好显示名称,同微博昵称
  • province: 省份编码(参考省份编码表)
  • city: 城市编码(参考城市编码表)
  • location:地址
  • description: 个人描述
  • url: 用户博客地址
  • profile_image_url: 自定义图像
  • domain: 用户个性化URL
  • gender: 性别,m--男,f--女,n--未知
  • followers_count: 粉丝数
  • friends_count: 关注数
  • statuses_count: 微博数
  • favourites_count: 收藏数
  • created_at: 创建时间
  • following: 是否已关注(此特性暂不支持)
  • verified: 加V标示,是否微博认证用户

使用示例

  • xml:

curl -u uid:password -d "source=appkey&status=playing with cURL and the Sina API" http://api.t.sina.com.cn/statuses/update.xml

  • json:

curl -u uid:password -d "source=appkey&status=playing with cURL and the Sina API" http://api.t.sina.com.cn/statuses/update.json

Java示例

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

package weibo4j.examples;

import weibo4j.Status;
import weibo4j.Weibo; 

public class UpdateStatus { 

	/**
	 * 发布一条微博信息 
	 * @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);
       	Status status = weibo.updateStatus("测试发表微博");
       	System.out.println(status.getId() + " : "+ status.getText()+"  "+status.getCreatedAt());
       	
		} 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/update
$c = new WeiboClient( WB_AKEY , 
                      WB_SKEY , 
                      $_SESSION['last_key']['oauth_token'] , 
                      $_SESSION['last_key']['oauth_token_secret']  );

$msg = $c->update("测试发表微博");
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;
} 
echo($msg['id']." : ".$msg['text']." ".$msg["created_at"]);