我正在使用以下代码在我的 Android 应用程序中将文本发布到 tumblr:
public class Snippet {
HttpPost hpost = new HttpPost("http://api.tumblr.com/v2/blog/" + blogname.getText().toString() + ".tumblr.com/post");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("type", "text"));
nameValuePairs.add(new BasicNameValuePair("title", title));
nameValuePairs.add(new BasicNameValuePair("body", body));
try
{
hpost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
}
catch (UnsupportedEncodingException e)
{
debug += e.toString();
}
consumer = new CommonsHttpOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);
consumer.setTokenWithSecret(token, secret);
try
{
consumer.sign(hpost);
} catch (OAuthMessageSignerException e)
{
debug += e.toString();
} catch (OAuthExpectationFailedException e)
{
debug += e.toString();
} catch (OAuthCommunicationException e)
{
debug += e.toString();
}
DefaultHttpClient client = new DefaultHttpClient();
HttpResponse resp = null;
try
{
resp = client.execute(hpost);
} catch (ClientProtocolException e)
{
debug += e.toString();
} catch (IOException e)
{
debug += e.toString();
}
String result = null;
try {
result = EntityUtils.toString(resp.getEntity());
} catch (ParseException e)
{
debug += e.toString();
} catch (IOException e)
{
debug += e.toString();
}
}
然后我得到以下结果:
{"meta":{"status":401,"msg":"Not Authorized"},"response":[]}
我错过了什么吗?我有正确的访问令牌和密钥。