Rest API - skąd przychodzi request

Rest API - skąd przychodzi request
WC
  • Rejestracja:ponad 8 lat
  • Ostatnio:4 dni
  • Postów:137
0

Czy istnieje możliwość wykrycia na poziomie aplikacji skąd przychodzi request?
Tj. mam endpoint, w którym chcę logować informację o hoście/ip - jest to możliwe?

Wiem, że z poziomu serwera potrafię uzyskać te informacje z access.log.

Miang
  • Rejestracja:około 7 lat
  • Ostatnio:minuta
  • Postów:1682
0

dzisiaj programiści uwielbiają przepisywać kod z jednego języka do drugiego, tylko po to by z projektem nadal stać w miejscu ale na nowej technologii
TR
  • Rejestracja:ponad 7 lat
  • Ostatnio:8 dni
  • Lokalizacja:700m n.p.m.
  • Postów:677
0

Pytanie o jakiej aplikacji pisze OP - bo coś mi się zdaje, że o "aplikacji" w JavaScript działającej w przeglądarce klienta wywołującego metodę API.

Ja niestety nie pamiętam, czy z poziomu JS da się to zrobić, ale tutaj podają jakieś sposoby: https://stackoverflow.com/questions/391979/how-to-get-clients-ip-address-using-javascript

Tyle tylko, że robienie tego od strony klienta / jego przeglądarki to ogólnie nie najlepszy pomysł.

Jest jeszcze aplikacja umiejscowiona w backend która obsługuje API, i tam jak najbardziej można takie dane odczytać, w każdym popularnym języku programowania są do tego odpowiednie metody, wyżej już zostało podane dla PHP.


DRY > SOLID (nie bierz tego zbyt poważnie)
edytowany 3x, ostatnio: TomRZ
WC
  • Rejestracja:ponad 8 lat
  • Ostatnio:4 dni
  • Postów:137
0

PHP

Wysyłając request przez Postmana lokalnie badam co mogę wyciągnąć z $_SERVER żeby wykryć ip klienta.
$_SERVER['REMOTE_ADDR'] pokazuje mi adres mojego kontenera na którym śmiga aplikacja.
Fix stąd nie działa (brak nagłówka HTTP_X_FORWARDED_FOR): https://stackoverflow.com/questions/4262081/serverremote-addr-gives-server-ip-rather-than-visitor-ip

TR
Wygląda to na jakieś lokalne przekierowanie, $_SERVER['REMOTE_ADDR'] musisz sprawdzać zatem w kontenerze/miejscu które pierwsze jest wywoływane przez żądanie HTTP klienta.
Miang
lokalnie wysyłasz request i dziwisz sier że otrzymujesz adres lokalny?
TR
Ja jednak wierzę, że jest inaczej ;D
WC
Lokalnie wysyłam request ale ip przychodzące wskazuje mi na kontener dockera w którym siedzi aplikacja - na serwerze działa już prawidłowo ;)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.