我正在使用HttpClient库。我知道直接发送带有POST请求的json字符串的方式。像:
HttpPost post = new HttpPost(url);
post.setEntity(new StringEntity(jsonString));
但是如何使用GET请求发送相同的数据。因为,HttpGet类中没有类似“setEntity(StringEntity entity)”的方法。 而且我愿意在没有任何特定密钥的情况下发送数据,就像我对POST请求一样。
答案 0 :(得分:0)
您可以使用NameValuePair对象列表并将其附加到url:
List<NameValuePair> params = new LinkedList<NameValuePair>();
params.add(new BasicNameValuePair("param_name_1", "param_value");
params.add(new BasicNameValuePair("param_name_2", "param_value");
String paramString = URLEncodedUtils.format(params, "utf-8");
String url = url + paramString;
现在,只需对此url
进行GET请求。
所以,基本上,这里发生的是你将参数字符串附加到url,你甚至可以手动完成。但这只是IMO更安全,更优雅的方式。