当使用 UrlEncodedFormEntity 发送 POST 请求时,它将 List 作为输入参数以及键,我的请求以[key={json}]
.
但是我要发送的请求应该是形式key={json}
,即不是列表。
那么,在使用 POST 时,给定的方法有什么替代方法吗?
注意: webservice 工作正常,因为它是 json,所以我不能使用 Soap。
我已经使用 POSTman 对其进行了测试,并且 Web 服务是 WCF(如果有任何用途的话..)
如果需要任何代码,请提及。提前致谢。
编辑代码:
HttpClient client = new DefaultHttpClient();
HttpPost request = new HttpPost(URL);
List<NameValuePair> value=new ArrayList<NameValuePair>();
value.add(new BasicNameValuePair("data",string));
//here it passes as List and here is where i want an alternate method
// by which i can send parameter as JSONobject
UrlEncodedFormEntity entity=new UrlEncodedFormEntity(value);
request.setEntity(entity);
HttpResponse response = client.execute(request);
HttpEntity entity2 = response.getEntity();
if(entity2.getContentLength() != 0) {
Reader tapReader = new InputStreamReader(response.getEntity().getContent());
char[] buffer = new char[(int) response.getEntity().getContentLength()];
tapReader.read(buffer);
tapReader.close();
JSONObject tapJsonObj = new JSONObject(buffer);