tumblr身份验证问题

时间:2010-11-10 12:02:44

标签: android tumblr

我正在尝试在android中构建一个tumblr客户端,但我遇到了响应代码403 - Forbidden。

api文档建议我使用电子邮件和密码参数来验证凭据并获取帐户信息。 我已经尝试了以下代码,但是如指定的那样获得403响应代码。 任何人都可以建议我做错了什么。

    String url = "http://www.tumblr.com/api/authenticate";
    HttpParams params = new BasicHttpParams();
    HttpConnectionParams.setConnectionTimeout(params, 20000);
    HttpConnectionParams.setSoTimeout(params, 20000);       
    DefaultHttpClient httpclient = new DefaultHttpClient(params);   

    UsernamePasswordCredentials credentials = new UsernamePasswordCredentials(_username + ":" + _password); 
    httpclient.getCredentialsProvider().setCredentials(new AuthScope(null,-123),credentials);       

    HttpPost method = new HttpPost(url);        
    HttpResponse response = httpclient.execute(method);
    response.getStatusLine().toString(); // this gives me a 403 res code (Forbidden)..

1 个答案:

答案 0 :(得分:3)

以下是我在我的应用中使用的身份验证:

HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(
"http://www.tumblr.com/api/authenticate");

    try {
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
    nameValuePairs.add(new BasicNameValuePair("email", Username));
    nameValuePairs.add(new BasicNameValuePair("password", Password));
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    HttpResponse response = httpclient.execute(httppost);
    if (response.getStatusLine().getStatusCode() != 200) {
        return false;
    }
    return true;
}