当前位置:  开发笔记 > 编程语言 > 正文

在ASP.NET页面中查找客户端位置

如何解决《在ASP.NET页面中查找客户端位置》经验,为你挑选了1个好方法。

如何在我的ASP.NET页面中找到客户端位置?实际上我使用过System.Globalization.RegionInfo.CurrentRegion,但是它显示了控制面板中的设置.那么我可以使用任何方法找到确切的位置吗?



1> Saul Dolgin..:

并不是说它会给你100%的准确性,但你可以使用hostip.info

它们提供了一个API,为您提供通过HTTP请求传递的IP地址的位置.您可以使用WebClient对象来调用API并解析结果. Scott Hanselman在这篇博客文章中有一个非常好的例子(下面我的例子基于他的文章).hostip.info的数据库基于一个开放式项目,社区将IP位置提供给......因此无法保证是正确的.

对于初学者,您需要确定客户端IP地址,如下所示:

string ipaddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

获得IP后,您可以创建WebClient对象并调用API ...

示例API调用:

string r;
using (var w = new WebClient())
{
    r = w.DownloadString(String.Format("http://api.hostip.info/?ip={0}&position=true", ipaddress));
}

结果将是XML,看起来像这样:



 This is the Hostip Lookup Service
 hostip
 
    inapplicable
 
 
    
     Sugar Grove, IL
     UNITED STATES
     US
     
     
        
         
            -88.4588,41.7696
         
        
     
    
 

推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有