asp利用sina提供的ip库端口来获得当前IP所有的地区,所在国,所在省,所在市,在线解析json
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%><%
'asp利用sina提供的ip库端口来获得当前IP所有的地区,所在国,所在省,所在市,在线解析json
this_ip = Request.ServerVariables("REMOTE_ADDR")
get_ip_url = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=" & g_ip
UserInfo=GetURL(get_ip_url)
Call InitScriptControl:Set objTest = getJSONObject(UserInfo)
response.write "当前IP:" & this_ip & "____<br>"
response.write "当前解析地址:" & get_ip_url & "____<br>"
response.write "获得的json内容:" & UserInfo & "____<br>"
response.write "解析IP所在国:" & objTest.country & "____<br>"
response.write "当前IP所在省:" & objTest.province & "____<br>"
response.write "当前IP所在市:" & objTest.city & "____<br>"
'解析json
'Call InitScriptControl
'Set objTest = getJSONObject(strTest)
Dim sc4Json
Sub InitScriptControl
Set sc4Json = Server.CreateObject("MSScriptControl.ScriptControl")
sc4Json.Language = "JavaScript"
sc4Json.AddCode "var itemTemp=null;function getJSArray(arr, index){itemTemp=arr[index];}"
End Sub
Function getJSONObject(strJSON)
sc4Json.AddCode "var jsonObject = " & strJSON
Set getJSONObject = sc4Json.CodeObject.jsonObject
End Function
Sub getJSArrayItem(objDest,objJSArray,index)
On Error Resume Next
sc4Json.Run "getJSArray",objJSArray, index
Set objDest = sc4Json.CodeObject.itemTemp
If Err.number=0 Then Exit Sub
objDest = sc4Json.CodeObject.itemTemp
End Sub
Dim scriptCtrl
Function parseJSON(str)
If Not IsObject(scriptCtrl) Then
Set scriptCtrl = Server.CreateObject("MSScriptControl.ScriptControl")
scriptCtrl.Language = "JavaScript"
scriptCtrl.AddCode "function ActiveXObject() {}" ' 覆盖 ActiveXObject
scriptCtrl.AddCode "function GetObject() {}" ' 覆盖 ActiveXObject
scriptCtrl.AddCode "Array.prototype.get = function(x) { return this[x]; }; var result = null;"
End If
On Error Resume Next
scriptCtrl.ExecuteStatement "var result = " & str & ";"
Set parseJSON = scriptCtrl.CodeObject.result
If Err Then
Err.Clear
Set parseJSON = Nothing
End If
End Function
'Get内容
Function GetURL(url)
dim http
set http=server.createobject("Msxml2.ServerXMLHTTP")
http.open "GET",url,false
http.setRequestHeader "If-Modified-Since","0"
http.send()
GetURL=http.responsetext
set http=nothing
End Function
%>
'asp利用sina提供的ip库端口来获得当前IP所有的地区,所在国,所在省,所在市,在线解析json
this_ip = Request.ServerVariables("REMOTE_ADDR")
get_ip_url = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=" & g_ip
UserInfo=GetURL(get_ip_url)
Call InitScriptControl:Set objTest = getJSONObject(UserInfo)
response.write "当前IP:" & this_ip & "____<br>"
response.write "当前解析地址:" & get_ip_url & "____<br>"
response.write "获得的json内容:" & UserInfo & "____<br>"
response.write "解析IP所在国:" & objTest.country & "____<br>"
response.write "当前IP所在省:" & objTest.province & "____<br>"
response.write "当前IP所在市:" & objTest.city & "____<br>"
'解析json
'Call InitScriptControl
'Set objTest = getJSONObject(strTest)
Dim sc4Json
Sub InitScriptControl
Set sc4Json = Server.CreateObject("MSScriptControl.ScriptControl")
sc4Json.Language = "JavaScript"
sc4Json.AddCode "var itemTemp=null;function getJSArray(arr, index){itemTemp=arr[index];}"
End Sub
Function getJSONObject(strJSON)
sc4Json.AddCode "var jsonObject = " & strJSON
Set getJSONObject = sc4Json.CodeObject.jsonObject
End Function
Sub getJSArrayItem(objDest,objJSArray,index)
On Error Resume Next
sc4Json.Run "getJSArray",objJSArray, index
Set objDest = sc4Json.CodeObject.itemTemp
If Err.number=0 Then Exit Sub
objDest = sc4Json.CodeObject.itemTemp
End Sub
Dim scriptCtrl
Function parseJSON(str)
If Not IsObject(scriptCtrl) Then
Set scriptCtrl = Server.CreateObject("MSScriptControl.ScriptControl")
scriptCtrl.Language = "JavaScript"
scriptCtrl.AddCode "function ActiveXObject() {}" ' 覆盖 ActiveXObject
scriptCtrl.AddCode "function GetObject() {}" ' 覆盖 ActiveXObject
scriptCtrl.AddCode "Array.prototype.get = function(x) { return this[x]; }; var result = null;"
End If
On Error Resume Next
scriptCtrl.ExecuteStatement "var result = " & str & ";"
Set parseJSON = scriptCtrl.CodeObject.result
If Err Then
Err.Clear
Set parseJSON = Nothing
End If
End Function
'Get内容
Function GetURL(url)
dim http
set http=server.createobject("Msxml2.ServerXMLHTTP")
http.open "GET",url,false
http.setRequestHeader "If-Modified-Since","0"
http.send()
GetURL=http.responsetext
set http=nothing
End Function
%>
- 相关阅读
- 非常不错的支持各种浏览器的简易调色板
- 连云港智慧树旅游
- 旅行社手机网站模板7
- CSS教程:CSS兼容的技巧
- ASP操作access或sqlserver数据库的函数库
- 绍兴中侨旅游网
- 介绍JavaScript里比较和逻辑运算符
- 中国大宗资产交易网
正在加载评论......
返回顶部发表评论
网友评论声明,请自觉遵守互联网相关政策法规。
您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。
- 更多>>同类信息
- ASP中Utf-8与Gb2312编码转换乱码问题的解决方法页面编码声明
- asp显示随机密码
- 通过阿里云服务接口获得ip地址详细信息
- iis点开后任务栏上有显示,但是窗口看不到的解决办法
- RSA加密解密插件
- 微软Encoder加密解密函数