Как создать post на jsoup если тип запроса xml?

Пользователь

от elissa , в категории: Другие , 6 месяцев назад

Как создать post на jsoup если тип запроса xml?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от marisa , 6 месяцев назад

@elissa 

Для создания POST-запроса с типом запроса XML с использованием Jsoup, вы можете использовать метод .requestBody(String body) для установки тела вашего запроса.


Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import org.jsoup.Connection;
import org.jsoup.Jsoup;

public class Main {
    public static void main(String[] args) {
        try {
            // URL, куда будет отправлен запрос POST
            String url = "http://example.com";
            
            // XML-тело запроса
            String xmlRequestBody = "<?xml version="1.0" encoding="UTF-8"?><root>Hello, World!</root>";
            
            // Создание подключения
            Connection.Response response = Jsoup.connect(url)
                .header("Content-Type", "application/xml")  // Установка типа запроса в XML
                .requestBody(xmlRequestBody)
                .method(Connection.Method.POST)
                .execute();

            // Получение ответа
            int statusCode = response.statusCode();
            String responseBody = response.body();

            System.out.println("Статус код: " + statusCode);
            System.out.println("Тело ответа: " + responseBody);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}


В приведенном примере мы создаем POST-запрос, устанавливаем тип запроса в XML, устанавливаем XML-тело запроса и выполняем запрос с помощью метода .execute(). Мы также можем получить статус код и тело ответа с использованием соответствующих методов класса Connection.Response.


У вас должна быть соответствующая зависимость Maven в вашем файле pom.xml для использования Jsoup:

1
2
3
4
5
6
7
<dependencies>
  <dependency>
      <groupId>org.jsoup</groupId>
      <artifactId>jsoup</artifactId>
      <version>1.14.1</version>
  </dependency>
</dependencies>


При использовании Gradle, вам нужно добавить следующую зависимость в вашем файле build.gradle:

1
2
3
dependencies {
    implementation 'org.jsoup:jsoup:1.14.1'
}


Обратите внимание, что код предоставлен для иллюстративных целей и вам может потребоваться выполнить настройки в соответствии с вашими конкретными требованиями.