【问题标题】:Send Form-data Post request using Http Post in android在android中使用Http Post发送Form-data Post请求
【发布时间】:2013-10-12 16:30:39
【问题描述】:

我想使用“form-data”发送一个 HTTP Post 请求。这是其余客户端的屏幕截图,以显示我想要什么:

更多关于标头的信息:

POST /action HTTP/1.1
Host: requsrt-utl
Cache-Control: no-cache

----WebKitFormBoundaryE19zNvXGzXaLvS5C
Content-Disposition: form-data; name="email"

abc@gmail.com
----WebKitFormBoundaryE19zNvXGzXaLvS5C
Content-Disposition: form-data; name="password"

123456
----WebKitFormBoundaryE19zNvXGzXaLvS5C

我尝试使用UrlEncodedFormEntity,但它将内容类型设置为'application/x-www-form-urlencoded',这是不正确的。

我的安卓代码:

HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost(urlStr);
        try {
            UrlEncodedFormEntity encodedFormEntity = new UrlEncodedFormEntity(nameValuePairs);
            httppost.setEntity(encodedFormEntity);
            HttpResponse httpresponse = httpclient.execute(httppost);
            return httpresponse.getEntity().getContent();

        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

当我使用这个时,网络服务没有得到任何参数,因此它发送一条消息'参数不存在'。

请帮忙!

【问题讨论】:

    标签: android http-post


    【解决方案1】:

    这可能对你有帮助

    HttpPost httppost = new HttpPost(urlStr);
    
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);  
    
    nameValuePairs.add(new BasicNameValuePair("userid", "12312"));  
    nameValuePairs.add(new BasicNameValuePair("sessionid", "234"));  
    
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
    

    how to add parameters in android http post?

    【讨论】:

    • 我也在做同样的事情,但总是得到 '415 unsupported media' 类型。我什至没有设置任何内容类型的标题。
    • 您可能需要设置标题“Content-Type”。 request.addHeader("Content-Type","application/x-www-form-urlencoded");
    • 不需要内容标题。他们创建了一个多部分的 http 调用,所以我做了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 1970-01-01
    • 2018-11-19
    相关资源
    最近更新 更多