在java中使用Tumblr API发布视频

时间:2013-03-18 20:10:56

标签: java android api tumblr

我现在正在与Tumblr api挣扎。 当我发布文本时,它非常简单,因为我只需要提供一个字符串标题和一个字符串体。 参考api doc(http://www.tumblr.com/docs/en/api/v2#text-posts),我使用了以下代码并且它成功运行。

HttpPost hpost = new HttpPost(BASE_URL + "/blog/" + blog + ".tumblr.com/post");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("type", "text"));
nameValuePairs.add(new BasicNameValuePair("text", title));
nameValuePairs.add(new BasicNameValuePair("body", body));
hpost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
consumer.sign(hpost);
DefaultHttpClient client = new DefaultHttpClient();
HttpResponse resp = null;
resp = client.execute(hpost);

然而,问题在于,当我发布视频时,我必须提供字符串标题和数组播放器。 (http://www.tumblr.com/docs/en/api/v2#video-posts) 我的问题是,如何将嵌入代码传递给NameValuePair对象? 我只需要发布一个视频,这样阵列的大小就是1。 我尝试了以下代码:

HttpPost hpost = new HttpPost(BASE_URL + "/blog/" + blog + ".tumblr.com/post");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("type", "video"));
nameValuePairs.add(new BasicNameValuePair("caption", title));
nameValuePairs.add(new BasicNameValuePair("player", "<embed src='blah'>"));

但无济于事。 如果有人可以帮忙解决这个问题,那将非常感激。谢谢!

1 个答案:

答案 0 :(得分:2)

值标题和数组播放器在查询视频plog帖子的响应中。不是添加新视频帖子的参数。部分:tumblr.com/docs/en/api/v2#posting包含您要使用的参数:标题,嵌入,数据(所有字符串......)