首页 新闻 搜索 专区 学院

关于post请求无法传值到服务器

0
悬赏园豆:10 [待解决问题]
@Override
    protected String doInBackground(String... param) {
        
        HttpPost httpPostRequest =new HttpPost(param[2]);
        
        List<NameValuePair> httpParams=new ArrayList<NameValuePair>();
        httpParams.add(new BasicNameValuePair("loginName", param[0]));
        httpParams.add(new BasicNameValuePair("password", param[1]));
        try {
            httpPostRequest.setEntity(new UrlEncodedFormEntity(httpParams,HTTP.UTF_8));
            HttpResponse httpResponse=new DefaultHttpClient().execute(httpPostRequest);
            if(httpResponse.getStatusLine().getStatusCode()==200){
                result=EntityUtils.toString(httpResponse.getEntity());
                result.replaceAll("\r\n|\n\r|\r|\n", "");
                
            }
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        
        return result;
    }
求学者一号的主页 求学者一号 | 初学一级 | 园豆:184
提问于:2015-07-28 22:37
< >
分享
所有回答(4)
0

代码是没错的,出现的啥错误,几个可能

1 请求是否发出去了,可以下载个HttpAnalyzer之类的工具看看

2 服务端错了,对你发的情况无法响应 400之类的错误

2012 | 园豆:19149 (专家六级) | 2015-07-29 08:56
0

服务端记录下日志,客户端安装个抓包工具分析一下请求有没有正确提交

JeffWong | 园豆:2021 (老鸟四级) | 2015-07-29 09:10
1

Android 4.0之后,http请求必须放入线程中,代码才会执行成功。

Supper_litt | 园豆:981 (小虾三级) | 2015-07-30 17:57
0

解决了吗,我最近做的签到系统也涉及到这个,可以的,但是httppost在高版的Android中有问题,还有的确是要放线程的。

雨落~无痕 | 园豆:478 (菜鸟二级) | 2016-05-11 15:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册