Account/update profile image

跳转到: 导航, 搜索
(使用示例:: 添加代码)
(Java示例)
第119行: 第119行:
 
  }
 
  }
 
  }
 
  }
 +
====PHP示例====
 +
<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>

2010年8月4日 (三) 14:11的版本

目录

account/update_profile_image

更新用户头像。注意:必须为用multipart Data来提交图片内容,不是URL的图片

URL:

http://api.t.sina.com.cn/account/update_profile_image.format

格式:

xml, json

HTTP请求方式:

POST

是否需要登录:

true

请求数限制:

true

请求参数:

  • image.必须参数. 必须为小于700K的有效的GIF, JPG, 或 PNG 图片. 如果图片大于500像素将按比例缩放。

返回:

XML示例:

<?xml version="1.0" encoding="UTF-8"?>
 <user>
   <id>11075</id>
   <screen_name>11075</screen_name>
   <name>11075</name>
   <province>广东</province>
   <city>广州</city>
   <location>广东 广州</location>
   <description></description>
   <url></url>
   <profile_image_url>50#.jpg</profile_image_url>
   <domain></domain>
   <gender></gender>
   <followers_count>0</followers_count>
   <friends_count>0</friends_count>
   <statuses_count>0</statuses_count>
   <favourites_count>0</favourites_count>
   <created_at>Thu Jan 01 08:00:00 +0800 1970</created_at>
   <following>false</following>
   <verified>false</verified>
   <geo_enabled>false</geo_enabled>
   <status>
     <created_at>Fri Dec 25 17:57:27 +0800 2009</created_at>
     <id>19093</id>
     <text>外面的世界很精彩</text>
     <source>
       <a id="0" href="http://t.sina.com.cn">Web</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>

使用示例:

curl -u user:password -H 'Expect:' -F image=@'test2.png;type=image/png' http://api.t.sina.com.cn/account/update_profile_image.xml

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示例

//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'].'].');
}