asp.net(C#)如何獲取IP地址所屬的省份及城市【實踐篇】


------------解決方案--------------------
純真版IP數據庫(CZ88.net)
一直在更新
目前有48萬數據,很好用,自己百度下

注:該方法應該可行,由於項目實踐緊,以后再驗證
------------解決方案--------------------
你可以用下webservice
http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx

注:getCountryCityByIp
通過輸入IP地址查詢國家、城市、所有者等信息。沒有注明國家的為中國

輸入參數:IP地址(自動替換 " 。" 為 "."),返回數據: 一個一維字符串數組String(1),String(0) = IP地址;String(1) = 查詢結果或提示信息

 getGeoIPContext
獲得您的IP地址和地址信息

輸入參數:無,返回數據: 一個一維字符串數組String(1),String(0) = IP地址;String(1) = 地址信息

注意:該方法已經停用

 getVersionTime
獲得本IP地址搜索 WEB 服務的數據庫版本更新時間

輸入參數:無,輸出參數 String

具體實踐見如下描述,

------------實踐--------------------

1. 添加IPWebService

一般而言,C#中調用WebService,首先得添加web引用,選中你的web項目,點擊右鍵,選擇Add Web Reference,這時會出現一個頁面,要你輸入web service的地址,你填入http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx

后點擊go就會找到該頁面,填上別名(add reference name),如:IPAddressSearch,然后點擊Add reference就行。這時它會自動在你的web.config文件中生成<setting name="WebQuery_IPAddressSearch_IpAddressSearchWebService"
        serializeAs="String">
        <value>http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx</value>
      </setting>

2. 在頁面中調用的時候需要先實例化:如 

WebQuery.IPAddressSearch.IpAddressSearchWebService service = new WebQuery.IPAddressSearch.IpAddressSearchWebService();
string theIpAddress = "218.56.32.7";
string[] IPAddress = service.getCountryCityByIp(theIpAddress);
string IPAddressProviceInfo = IPAddress[1].Substring(0, 3);    //provice
string IPAddressCityInfo = IPAddress[1].Substring(3, 3);  //city
View Code

------------解決方案--------------------
webrequest->
http://www.ip.cn/getip2.php?action=queryip&ip_url=211.144.216.41
ip_url改成你想要查詢的ip地址
然后得到的信息是:
您查詢的IP是:<span class='orange'>211.144.216.41</span> 來自:上海

注:此方法驗證失敗


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM