0

DynDNSとWebRequestC#を使用してパブリックIPを取得するで見つけたこのコードを使用しています

IPアドレスを取得します。しかし、サーバーからIPアドレスを取得するだけで、必要なのはWebアプリケーションに接続しているユーザーからのIPアドレスです。

String direction = "";
WebRequest request = WebRequest.Create("http://checkip.dyndns.org/");
using (WebResponse response = request.GetResponse())
using (StreamReader stream = new StreamReader(response.GetResponseStream()))
{
    direction = stream.ReadToEnd();
}

//Search for the ip in the html
int first = direction.IndexOf("Address: ") + 9;
int last = direction.LastIndexOf("</body>");
direction = direction.Substring(first, last - first);
4

2 に答える 2

2

Webアプリを実行していて、「クライアント」のIPが必要な場合は、UserHostAddressを使用する必要があります

var userAddress = HttpContext.Current.Request.UserHostAddress;
于 2012-06-01T14:42:05.260 に答える
0

最初にコンテキストを取得します。

HttpListenerContext ctx = m_HttpListener.GetContext();

リクエストを受け入れると、クライアント情報が で利用可能になりますctxctxクライアントの IP アドレスを取得するために使用します。

string IP = ctx.Request.RemoteEndPoint.Address.ToString();
于 2013-02-12T05:58:15.690 に答える