使用查询参数与writeBytes进行POST

时间:2016-09-14 01:51:05

标签: web service

我是Web Service的新手。我试图了解从客户端发布请求的服务器端影响。如果我使用CASE 1方法,我可以从URL查询参数中检索值。

但是,如果使用第二种方法发布帖子,服务器如何接收此数据?在标头,查询参数中,还是作为流?

案例 - 1

age = 15
print "******************Enter your age: %s******************" % age

案例-2

        URL url = url("http://serviceendpoint?q=value");
        connection = (HttpURLConnection) url.openConnection();
        connection.setRequestMethod("POST");

1 个答案:

答案 0 :(得分:0)

在案例2中,urlParameters变量的值(字符串“value”)将被写为POST请求的主体。您将从原始请求正文中在服务器端检索它。由于您编写了直接数据,因此服务器不会看到它可以解析的表单字段或参数名称/值对,服务器代码必须将请求正文作为数据读取并对其执行相应的操作。根据服务器的不同,您可能还需要将请求的MIME内容类型设置为“text / plain”或另一种指示存在何种数据的类型,“application / x-www-form-”的标准POST内容类型urlencoded“或”multipart / form-data“会导致服务器尝试解析指定编码中失败的名称/值对的正文。