[ darko_sudarov @ 26.10.2016. 10:59 ] @

Pozdrav,

Na koji je nacin moguce pronaci ip adresu korisnika koji se kaci na web server aplikaciju?
Ideja je sledeca. Samo korisnik sa odredjenom IP adresom moze da pridje end pointu na web serveru, u suprotnom konekcija se odbija.

Pokusao sam sa raznim varijantama ali uvek vrati samo javnu ip adresu servera.

Ovde sam napravio metod za koji nazalost uvek vrati samo server ip
FServer->OnConnect = GetIP;

Code:

void __fastcall TForm1::GetIP (TIdContext *AContext)
{
TList *Lst = FServer->Contexts->LockList();
Memo1->Lines->Add(FServer->Bindings->GetNamePath());
for(int i = 0; i < Lst->Count; i++)
   {
   TIdContext *AContext = reinterpret_cast<TIdContext *>(Lst->Items[i]);
   Memo1->Lines->Add("from socket  "+ AContext->Connection->Socket->Binding->PeerIP);
   Memo1->Lines->Add("from binding "+ AContext->Binding->PeerIP);
   }
FServer->Contexts->UnlockList();
}


Pokusao sam i na WebModule1DefaultHandlerAction kojiisto tako vrati samo serversku IP adresu.
Code:

Request->RemoteIP;