Как получить имя хоста/домена клиента в контроллере загрузки SpringJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как получить имя хоста/домена клиента в контроллере загрузки Spring

Сообщение Anonymous »

У меня есть приложение весенней загрузки с одним API-интерфейсом для отдыха. Развернум его на одном Linux-сервере.
И у нас есть несколько Java-приложений, развернутых на нескольких Linux-серверах, которые вызывают этот API.
Каждый раз, когда к этой конечной точке делается запрос, я хочу, чтобы информация об имени хоста проверялась.< /p>
  • API — http://localhost:8000/test
  • Второе приложение весенней загрузки, работающее на локальном порту 9000
    когда это приложение отправляет запрос на http://localhost:8000/test — я смогу узнать, какой хост сделал запрос. здесь - localhost:9000
Я пробовал использовать HttpServletRequest.
Я получаю только следующие заголовки от этого
хоста, соединение, пользовательский агент, принять, тип контента, длина контента.
Origin , Referer — заголовки отсутствуют.
Код контроллера ниже
@PostMapping("/test")

public String authenticateAndGetToken (HttpServletRequest httpServletRequest, @RequestBody Request request) {

String errorMsg = "Invalid UserName";

Log.info("origin"+httpServletRequest.getHeader(HttpHeaders.ORIGIN));

httpServletRequest.getHeaderNames().asIterator().forEachRemaining (xx->System.out.println(xx));

Log.info(httpServletRequest.getRemoteAddr());

UserDetails userDetails = userInfoService. LoadUserBy Username (request.getUsername

Здесь источник имеет значение null
Getremoteaddr — это адрес сервера, а не клиента
RestTemplate restTemplate1 = new RestTemplate(); HttpHeaders headers = new HttpHeaders();

headers.setContentType (MediaType.APPLICATION_JSON);

Map map = new HashMap();

map.put("username", "test");

map.put("password", "test");

String jsonBody new ObjectMapper().writeValueAsString(map);

HttpEntity entity = new HttpEntity(jsonBody, headers);

ResponseEntity response = restTemplate1.exchange(url: "http://localhost:8000/test", HttpMethod.POST, entity, String.class);


Подробнее здесь: https://stackoverflow.com/questions/790 ... controller
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»