我需要使用header params和form params向REST Web服务发出POST请求。我有网络服务方法的描述:
Method: POST /
Produces: application/json /
Consume: application/x-www-form-urlencoded / and etc.
我需要发送的标题和表单参数列表。
任何人都可以澄清什么是生产和消费以及如何形成请求?
我不赞成: httpPost = new HttpPost(webServiceUrl + methodName);
httpPost.setHeader("headerParamName", headerParam);
entity = jsonObject.put(param.getKey(), param.getValue());//param - form param
httpPost.setEntity(entity);
httpPost.setHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF8"); //???
如果问题是假的,请提前抱歉。
答案 0 :(得分:2)
生成应该是Web服务将返回的数据类型(即,它是您的方法将接收的数据类型),而Consume应该是Web服务期望接收的数据类型(即,您从方法中传递的数据)。 所以我认为你必须设置:
httpPost.setHeader("Accept", "application/json");
httpPost.setHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF8");