Android中的HttpPost无法正常工作

时间:2013-05-04 05:46:26

标签: android http-post

我正在尝试使用HTTP POST连接到apache tomcat服务器,当我看到服务器的LOG文件时显示 GET /login/validate_doc.jsp HTTP / 1.1“200 685

这意味着当我使用HttpPost发送时它收到GET请求,并且服务器没有收到表单参数。

我的代码如下:

        HttpPost post_http=null;
        post_http=new HttpPost("http://somexx.ac.in/medONmob/validate_doc.jsp");
        try 
        {

            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);

            nameValuePairs.add(new BasicNameValuePair("username",username));
            nameValuePairs.add(new BasicNameValuePair("password",password));

            post_http.setEntity(new UrlEncodedFormEntity(nameValuePairs));  

我哪里错了...... ???请帮帮我

2 个答案:

答案 0 :(得分:1)

在构建UrlEncodedFormEntity时尝试指定编码。默认情况下,它是ISO-8859-1。 这也将使您的代码在未来安全

Creating a UrlEncodedFormEntity from a List of NameValuePairs throws a NullPointerException

答案 1 :(得分:0)

鉴于您正在使用帖子,那么您可能正在发送请求正文中的数据,我是对吗?那么您必须指定要在标题中发送的数据的内容类型,以便执行一个合适的帖子:)。例如,如果我在请求正文中发送一个json,那么我应该添加一个这样的标题:

request.addHeader(“content-type”,“text / json”);

干杯