Как camunda вызывает внешнюю веб-службу/службу HTTP

1. В Camunda для вызова внешних веб-сервисов можно использовать Java или JavaScript. Ниже приведен пример реализации вызова веб-службы с использованием Java:

URL url = new URL(“http://example.com/api”);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod(“POST”);
connection.setRequestProperty(“Content-Type”, “application/json”);
connection.setDoOutput(true);

OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
out.write(“{‘param1’: ‘value1’, ‘param2’: ‘value2’}”);
out.close();

InputStream inputStream = connection.getInputStream();


В этом примере класс Java HttpURLConnection используется для вызова веб-службы. Сначала создайте объект URL, чтобы указать адрес веб-службы. Затем откройте соединение HttpURLConnection и установите метод запроса и заголовок запроса. Затем напишите тело запроса в выходной поток соединения, затем закройте поток. Наконец, прочитайте ответ веб-службы из входного потока соединения. 2. В узле Service Task в Camunda приведенный выше код можно использовать для вызова веб-службы. Например, в метод execute() класса Java можно добавить следующий код:

URL url = new URL(“http://example.com/api”);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod(“POST”);
connection.setRequestProperty(“Content-Type”, “application/json”);
connection.setDoOutput(true);

OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
out.write(“{‘param1’: ‘value1’, ‘param2’: ‘value2’}”);
out.close();

InputStream inputStream = connection.getInputStream();

String responseBody = new String(inputStream.readAllBytes());
execution.setVariable(“responseBody”, responseBody);

В этом примере сначала создайте объект URL, затем используйте класс HttpURLConnection, чтобы открыть соединение и задать метод запроса и заголовки. Затем запишите тело запроса в поток вывода соединения и закройте поток. Затем прочитайте ответ веб-службы из входного потока соединения и сохраните тело ответа в виде строки в переменной процесса. Наконец, язык выражений можно использовать в модели BPMN для доступа к переменным процесса для получения ответов от веб-служб.

Supongo que te gusta

Origin blog.csdn.net/wxz258/article/details/130721654
Recomendado
Clasificación