динамические параметры запроса в webclients

#java #spring #java-8 #webclient

#java #весна #java-8 #webclient

Вопрос:

Требование — у меня есть сервлет, в котором на основе URL-адреса мне нужно выполнить вызов WebClient.

url-адрес — https:///job/feeds ?запрос = abcamp; отступ = jsonamp;строк = 5

Параметры запроса url (?query= abcamp; indent= jsonamp;rows = 5) не являются фиксированными, они могут варьироваться в зависимости от требований пользователя. Итак, приведенный ниже код был написан для указанного выше URL-адреса, когда они исправлены.

 JAXRSClientFactoryBean client = bean(serverUrl,New ObjectMapper());
return client.createWebClient()
.path("job")
.path("feeds")
.query("indent",json)
.query("rows",5)
.query("query",abc)
.get(XYZ.class)
  

Но я хочу сделать код динамическим, чтобы на основе параметра запроса.атрибуты запроса должны быть добавлены к объекту JAXRSClientFactoryBean.

Например —

  • если я получу этот URL (https:///job/feeds ?query=abc) тогда должен быть добавлен только один параметр запроса.
  • если я получу этот URL (https:///job/feeds ?query=abcamp;indent= json) затем должны быть добавлены два параметра запроса.

Итак, может кто-нибудь, пожалуйста, помочь мне сделать этот код динамическим.

Ниже приведен код, который я написал на случай, если он станет динамическим.

 JAXRSClientFactoryBean client = bean(serverUrl,New ObjectMapper());
WebClient wc = client.createWebClient().path("job").path("feeds");

request.getParameterMap().forEach(wc::query);

  

Но из приведенного выше кода ответа не поступает.

Комментарии:

1. что вы имеете в виду no response is coming from the above code. ? можете ли вы распечатать URL-адрес?

2. URL-адрес поступает до https://<url>/job/feeds