HTTP POST с использованием JSON в Java

Я хотел бы сделать простой HTTP POST, используя JSON в Java.

Допустим, URL-адрес www.site.com

и принимает значение {"name": "myname", "age": "20"} , например, с пометкой 'details' .

Как мне создать синтаксис для POST?

Я также не могу найти метод POST в JSON Javadocs.

176
задан cricket_007 16 October 2017 в 06:06
поделиться

1 ответ

Java 8 с апачским httpClient 4

CloseableHttpClient client = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost("www.site.com");


String json = "details={\"name\":\"myname\",\"age\":\"20\"} ";

        try {
            StringEntity entity = new StringEntity(json);
            httpPost.setEntity(entity);

            // set your POST request headers to accept json contents
            httpPost.setHeader("Accept", "application/json");
            httpPost.setHeader("Content-type", "application/json");

            try {
                // your closeablehttp response
                CloseableHttpResponse response = client.execute(httpPost);

                // print your status code from the response
                System.out.println(response.getStatusLine().getStatusCode());

                // take the response body as a json formatted string 
                String responseJSON = EntityUtils.toString(response.getEntity());

                // convert/parse the json formatted string to a json object
                JSONObject jobj = new JSONObject(responseJSON);

                //print your response body that formatted into json
                System.out.println(jobj);

            } catch (IOException e) {
                e.printStackTrace();
            } catch (JSONException e) {

                e.printStackTrace();
            }

        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
1
ответ дан 23 November 2019 в 20:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: