Account/update profile image
(→返回:) |
|||
(未显示4个用户的7个中间版本) | |||
第1行: | 第1行: | ||
− | + | {{api_desc2| | |
− | + | uri=account/update_profile_image| | |
− | + | desc=更新用户头像。| | |
− | = | + | format=XML/JSON| |
− | + | httpMethod=POST| | |
− | + | needAuth=true| | |
− | + | rateLimit=true| | |
− | + | params={{api_args|image|true|binary|必须为小于700K的有效的GIF, JPG图片. 如果图片大于500像素将按比例缩放。}}| | |
− | + | getParam=| | |
− | + | postParam= -F image=@'test2.jpg;type=image/jpeg'| | |
− | + | result= | |
− | + | ===XML示例=== | |
− | = | + | <pre> |
− | true | + | <?xml version="1.0" encoding="UTF-8"?> |
− | + | ||
− | = | + | |
− | true | + | |
− | + | ||
− | = | + | |
− | + | ||
− | + | ||
− | === | + | |
− | XML示例 | + | |
− | + | ||
<user> | <user> | ||
− | <id> | + | <id>1854835127</id> |
− | <screen_name> | + | <screen_name>siegetest2</screen_name> |
− | <name> | + | <name>siegetest2</name> |
− | <province> | + | <province>11</province> |
− | <city> | + | <city>8</city> |
− | <location> | + | <location>北京 海淀区</location> |
<description></description> | <description></description> | ||
<url></url> | <url></url> | ||
− | <profile_image_url>http:// | + | <profile_image_url>http://tp4.sinaimg.cn/1854835127/50/1291709651/1</profile_image_url> |
<domain></domain> | <domain></domain> | ||
− | <gender></gender> | + | <gender>m</gender> |
<followers_count>0</followers_count> | <followers_count>0</followers_count> | ||
− | <friends_count> | + | <friends_count>20</friends_count> |
− | <statuses_count> | + | <statuses_count>2</statuses_count> |
<favourites_count>0</favourites_count> | <favourites_count>0</favourites_count> | ||
− | <created_at>Thu | + | <created_at>Thu Nov 11 00:00:00 +0800 2010</created_at> |
<following>false</following> | <following>false</following> | ||
<verified>false</verified> | <verified>false</verified> | ||
− | < | + | <allow_all_act_msg>false</allow_all_act_msg> |
+ | <geo_enabled>true</geo_enabled> | ||
<status> | <status> | ||
− | <created_at>Fri | + | <created_at>Fri Nov 12 10:31:27 +0800 2010</created_at> |
− | <id> | + | <id>3589902667</id> |
− | <text> | + | <text>wqrwer</text> |
<source> | <source> | ||
− | <a | + | <a href="">微博开放平台接口</a> |
</source> | </source> | ||
<favorited>false</favorited> | <favorited>false</favorited> | ||
第57行: | 第48行: | ||
<in_reply_to_screen_name></in_reply_to_screen_name> | <in_reply_to_screen_name></in_reply_to_screen_name> | ||
</status> | </status> | ||
− | + | </user> | |
− | + | </pre> | |
− | === | + | ===JSON示例=== |
− | + | <pre> | |
+ | { | ||
+ | "id":1854835127, | ||
+ | "screen_name":"siegetest2", | ||
+ | "name":"siegetest2", | ||
+ | "province":"11", | ||
+ | "city":"8", | ||
+ | "location":"北京 海淀区", | ||
+ | "description":"", | ||
+ | "url":"", | ||
+ | "profile_image_url":"http://tp4.sinaimg.cn/1854835127/50/0/1", | ||
+ | "domain":"", | ||
+ | "gender":"m", | ||
+ | "followers_count":0, | ||
+ | "friends_count":20, | ||
+ | "statuses_count":2, | ||
+ | "favourites_count":0, | ||
+ | "created_at":"Thu Nov 11 00:00:00 +0800 2010", | ||
+ | "following":false, | ||
+ | "allow_all_act_msg":false, | ||
+ | "geo_enabled":true, | ||
+ | "verified":false, | ||
+ | "status":{ | ||
+ | "created_at":"Fri Nov 12 10:31:27 +0800 2010", | ||
+ | "id":3589902667, | ||
+ | "text":"wqrwer", | ||
+ | "source":"<a href=\"\" rel=\"nofollow\">微博开放平台接口</a>", | ||
+ | "favorited":false, | ||
+ | "truncated":false, | ||
+ | "in_reply_to_status_id":"", | ||
+ | "in_reply_to_user_id":"", | ||
+ | "in_reply_to_screen_name":"", | ||
+ | "geo":null | ||
+ | } | ||
+ | } | ||
+ | </pre>| | ||
+ | useAge= | ||
+ | * 采用multipart/form-data编码方式提交,可以参考: [http://www.ietf.org/rfc/rfc1867.txt Form-based File Upload in HTML]| | ||
+ | otherInfo= | ||
+ | ===Java示例=== | ||
+ | 请从 [[SDK | 微博SDK开发包下载]] 下载Java SDK<br> | ||
+ | 代码示例如下: | ||
+ | package weibo4j.examples; | ||
+ | |||
+ | import java.io.File; | ||
+ | |||
+ | import weibo4j.User; | ||
+ | import weibo4j.Weibo; | ||
+ | |||
+ | public class OAuthUpdateProfileImage { | ||
+ | |||
+ | /** | ||
+ | * Usage: java -DWeibo4j.oauth.consumerKey=[consumer key] | ||
+ | * -DWeibo4j.oauth.consumerSecret=[consumer secret] | ||
+ | * Weibo4j.examples.OAuthUpdateProfile [accessToken] [accessSecret] | ||
+ | * [imageFilePath] | ||
+ | * | ||
+ | * @param args | ||
+ | * message | ||
+ | */ | ||
+ | public static void main(String[] args) { | ||
+ | try { | ||
+ | if (args.length < 3) { | ||
+ | System.out.println( | ||
+ | "Usage: java weibo4j.examples.OAuthUpdateProfile token tokenSecret filePath"); | ||
+ | System.exit( -1); | ||
+ | } | ||
+ | |||
+ | System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); | ||
+ | System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); | ||
+ | |||
+ | Weibo weibo = new Weibo(); | ||
+ | |||
+ | /* | ||
+ | * 此处需要填写AccessToken的key和Secret,可以从OAuthUpdate的执行结果中拷贝过来 | ||
+ | */ | ||
+ | weibo.setToken(args[0], args[1]); | ||
+ | try { | ||
+ | File file=new File(args[2]); | ||
+ | if(file==null){ | ||
+ | System.out.println("file is null"); | ||
+ | System.exit(-1); | ||
+ | } | ||
+ | User user = weibo.updateProfileImage(file); | ||
+ | |||
+ | System.out.println("Successfully upload the status to [" | ||
+ | + user.getName() + "]."); | ||
+ | |||
+ | } catch (Exception e1) { | ||
+ | e1.printStackTrace(); | ||
+ | } | ||
+ | } catch (Exception ioe) { | ||
+ | System.out.println("Failed to read the system input."); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | ===PHP示例=== | ||
+ | 请从 [[SDK | 微博SDK开发包下载]] 处下载PHP SDK(支持OAuth验证之版本)<br> | ||
+ | 代码示例如下: | ||
+ | <pre> | ||
+ | //account/update_profile_image | ||
+ | $c = new WeiboClient( WB_AKEY , | ||
+ | WB_SKEY , | ||
+ | $_SESSION['last_key']['oauth_token'] , | ||
+ | $_SESSION['last_key']['oauth_token_secret'] ); | ||
+ | $pic_path = 'pic_path'; | ||
+ | $msg = $c->update_avatar($pic_path); | ||
+ | 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['name'])){ | ||
+ | echo("Successfully upload the status to [".$msg['name'].'].'); | ||
+ | } | ||
+ | </pre> | ||
+ | }} |
2011年3月9日 (三) 15:20的最后版本
目录 |
account/update_profile_image
更新用户头像。
URL
http://api.t.sina.com.cn/account/update_profile_image.(json%7Cxml)
支持格式
XML/JSON
HTTP请求方式
POST
是否需要登录
true
关于授权机制,参见授权机制声明
请求数限制
true
关于请求数限制,参见接口访问权限说明
请求参数
必选 | 类型及范围 | 说明 | |
---|---|---|---|
source | true | string | 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。(采用OAuth授权方式不需要此参数) |
image | true | binary | 必须为小于700K的有效的GIF, JPG图片. 如果图片大于500像素将按比例缩放。 |
注意事项
- 采用multipart/form-data编码方式提交,可以参考: Form-based File Upload in HTML
返回结果
XML示例
<?xml version="1.0" encoding="UTF-8"?> <user> <id>1854835127</id> <screen_name>siegetest2</screen_name> <name>siegetest2</name> <province>11</province> <city>8</city> <location>北京 海淀区</location> <description></description> <url></url> <profile_image_url>http://tp4.sinaimg.cn/1854835127/50/1291709651/1</profile_image_url> <domain></domain> <gender>m</gender> <followers_count>0</followers_count> <friends_count>20</friends_count> <statuses_count>2</statuses_count> <favourites_count>0</favourites_count> <created_at>Thu Nov 11 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> <status> <created_at>Fri Nov 12 10:31:27 +0800 2010</created_at> <id>3589902667</id> <text>wqrwer</text> <source> <a href="">微博开放平台接口</a> </source> <favorited>false</favorited> <truncated>false</truncated> <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> </status> </user>
JSON示例
{ "id":1854835127, "screen_name":"siegetest2", "name":"siegetest2", "province":"11", "city":"8", "location":"北京 海淀区", "description":"", "url":"", "profile_image_url":"http://tp4.sinaimg.cn/1854835127/50/0/1", "domain":"", "gender":"m", "followers_count":0, "friends_count":20, "statuses_count":2, "favourites_count":0, "created_at":"Thu Nov 11 00:00:00 +0800 2010", "following":false, "allow_all_act_msg":false, "geo_enabled":true, "verified":false, "status":{ "created_at":"Fri Nov 12 10:31:27 +0800 2010", "id":3589902667, "text":"wqrwer", "source":"<a href=\"\" rel=\"nofollow\">微博开放平台接口</a>", "favorited":false, "truncated":false, "in_reply_to_status_id":"", "in_reply_to_user_id":"", "in_reply_to_screen_name":"", "geo":null } }
其他
Java示例
请从 微博SDK开发包下载 下载Java SDK
代码示例如下:
package weibo4j.examples; import java.io.File; import weibo4j.User; import weibo4j.Weibo; public class OAuthUpdateProfileImage { /** * Usage: java -DWeibo4j.oauth.consumerKey=[consumer key] * -DWeibo4j.oauth.consumerSecret=[consumer secret] * Weibo4j.examples.OAuthUpdateProfile [accessToken] [accessSecret] * [imageFilePath] * * @param args * message */ public static void main(String[] args) { try { if (args.length < 3) { System.out.println( "Usage: java weibo4j.examples.OAuthUpdateProfile token tokenSecret filePath"); System.exit( -1); } System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); Weibo weibo = new Weibo(); /* * 此处需要填写AccessToken的key和Secret,可以从OAuthUpdate的执行结果中拷贝过来 */ weibo.setToken(args[0], args[1]); try { File file=new File(args[2]); if(file==null){ System.out.println("file is null"); System.exit(-1); } User user = weibo.updateProfileImage(file); System.out.println("Successfully upload the status to [" + user.getName() + "]."); } catch (Exception e1) { e1.printStackTrace(); } } catch (Exception ioe) { System.out.println("Failed to read the system input."); } } }
PHP示例
请从 微博SDK开发包下载 处下载PHP SDK(支持OAuth验证之版本)
代码示例如下:
//account/update_profile_image $c = new WeiboClient( WB_AKEY , WB_SKEY , $_SESSION['last_key']['oauth_token'] , $_SESSION['last_key']['oauth_token_secret'] ); $pic_path = 'pic_path'; $msg = $c->update_avatar($pic_path); 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['name'])){ echo("Successfully upload the status to [".$msg['name'].'].'); }
文档更新时间: 2011-03-09