向服务器发送请求。使用不同的defaultClients进行不同的响应

时间:2013-05-22 06:54:04

标签: java android http post

当我尝试使用Java(Mac上的JVM)发送具有正确凭据的发布请求时,我得到了正确的响应代码302 FOUND。

但是当在android上使用相同的代码时,使用SAME正确的参数,我得到了响应CODE 200 OK。

发送帖子请求的代码:

    DefaultHttpClient httpclient = new DefaultHttpClient();
    HttpPost httpost = new HttpPost(POST_URL);

    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("auth", "login"));
    nvps.add(new BasicNameValuePair("login", login));
    nvps.add(new BasicNameValuePair("password", password));
    nvps.add(new BasicNameValuePair("set_cookie", "on"));


    httpost.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse response = httpclient.execute(httpost);

    HttpEntity entity = response.getEntity();

1 个答案:

答案 0 :(得分:0)

302 FOUND 是执行“重定向”的常用方法,似乎Android或MacJVM没有执行重定向。您使用的是相同的SDK版本吗?

尝试使用:

final HttpParams params = new BasicHttpParams();
HttpClientParams.setRedirecting(params, false);