Как перенаправить запрос javax.ws.rs.client.WebTarget Post через прокси - PullRequest
0 голосов
/ 19 декабря 2018

У меня есть сервер, который пытается выполнить POST-вызов на внешний IP, к сожалению, если я выполняю вызов напрямую, он блокируется внутренним брандмауэром.

Однако у нас есть прокси-сервер, который разрешилисходящий http-трафик, если я сначала перенаправлю вызов POST через этот прокси-сервер, то он должен завершиться успешно.

Клиент, выполняющий вызов, использует объект javax.ws.rs.client.WebTarget для создания / направления POSTв формате вызова:

WebTarget.path("URL_HERE").request().post(ENTITY_HERE).readEntity(RETURN_TYPE_HERE.class);

Однако в документе javax ws я не вижу способа перенаправить этот вызов через прокси-сервер (например, через host = proxy_domain и port = 1).

Во-вторых, есть ли способ перенаправления прокси?Например, я вижу в Интернете некоторую похожую документацию, касающуюся обновления wsdl для глобальных настроек, но я хочу, чтобы это происходило только для этого единственного вызова POST.

РЕДАКТИРОВАТЬ: Этот Q такой же, как и предыдущий в отношениивызов через прокси-сервер, хотя ответа на него было недостаточно - я добавил примечание к комментариям здесь о добавлении ApacheConnectorProvider, который требовался для создания экземпляра вызова via.

Решение, как упомянутобыло создать конфигурацию в соответствии с:

ClientConfig config = new ClientConfig().connectorProvider(new ApacheConnectorProvider()) .property(ClientProperties.PROXY_URI, "http://PROXY_ADDRESS:PROXY_PORT");

Использование Джерси 2.27.

1 Ответ

0 голосов
/ 20 декабря 2018

Ответ был в соответствии с

Настройка прокси не работает в Джерси ClientConfig

Я добавил нужный сегмент кода в конец моего исходного вопроса.

...