0

我正在发送一个带有一个参数的 get 请求,JSON其中设置了请求正文,但不知道如何。有什么特别的方法吗?

4

3 回答 3

0
HttpPost post =  new HttpPost(url);
    post.setHeader("Content-type", "application/json");
    InputStream resultStream = null;
    HttpResponse response = null;
    StringBuilder entityStringBuilder = new StringBuilder();
    try {
        HttpClient client =new DefaultHttpClient();
        JSONObject dateObject = new JSONObject();
        dateObject.put("CurrentTime", UTCDate.GetUTCdatetimeAsString());
        StringEntity currentDate = new StringEntity(dateObject.toString());
        post.setEntity(currentDate);
        //post.setEntity(dateObject);
        response = client.execute(post);
        resultStream = response.getEntity().getContent();

请根据您的需要更改......

于 2014-04-28T07:50:09.237 回答
0

基本上要使用 HTTP 发送 JSON,您使用 POST 请求,而 JSON 字符串是请求正文的一部分。

您不能将 JSON 附加到 URL,因为 JSON 分隔符是非法字符,即使您使用转义字符,也不应该这样做。

如果您需要一些示例,这里有几个问题:

在android中通过HTTP put请求将JSON发送到服务器

在 post 请求中将 JSON 传输到服务器

祝你好运!

于 2014-04-26T11:12:23.743 回答
0

试试这个代码来发送获取请求 -

ArrayList<NameValuePair> perameters = new ArrayList<NameValuePair>();
perameters.add(new BasicNameValuePair("param1", "value1"));
perameters.add(new BasicNameValuePair("param2", "value1"));
perameters.add(new BasicNameValuePair("param3", "value1"));
perameters.add(new BasicNameValuePair("param4", "value1"));


DefaultHttpClient httpClient = new DefaultHttpClient();
                String paramString = URLEncodedUtils.format(perameters, "utf-8");
                url += "?" + paramString;
                HttpGet httpGet = new HttpGet("your basic url excluding ? mark");
                HttpResponse httpResponse = httpClient.execute(httpGet);
                HttpEntity httpEntity = httpResponse.getEntity();
                responseBody = EntityUtils.toString(httpEntity);
 JSONObject jsObject = new JSONObject(responseBody);

希望此代码对您有所帮助!!!1 如果它不起作用,请告诉我,我会尽力为您提供更多帮助。

于 2014-04-26T11:14:39.620 回答