ajax 关于IP地址查询的API
Posted 奔跑的葛根
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax 关于IP地址查询的API相关的知识,希望对你有一定的参考价值。
form { border: 1px solid #467; border-radius: 5px; font: 14px/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif; overflow: hidden; padding:10px; width:300px; color:#456; margin:15px; } div{ margin:15px; color:#346; } button{ display:inline-block; padding:6px 12px; margin-bottom:0; line-height:1.4; text-align:center; cursor:pointer; border-radius:4px; border:1px solid transparent; color:#fff; background:#1aba9c; } input{ display: inline-block; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); box-shadow: inset 0 1px 1px rgba(0,0,0,.075); -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; } <form action="#"> <p>输入ip地址查询相应的信息</p> <input id="iptext" type="text"> <button type="submit">查询</button> </form> <div></div> <!-- 推荐开源CDN来选取需引用的外部JS //--> <script type="text/javascript" src="http://cdn.gbtags.com/jquery/1.11.1/jquery.min.js"></script> /*Javascript代码片段*/ $(function(){ $("form").submit(function(e){ e.preventDefault(); var ip=$("#iptext").val(), headers = {"apikey": "5292d6abaf0ec95c2b7924551e50668f"}; url="http://apis.baidu.com/apistore/iplookupservice/iplookup?ip="+ip; $.ajax({ url:url, method: "GET", headers: headers, dataType: "json", success: function(data){ var info=data.retData; $.each(info,function(key,value){ $("div").append(key+":"+value+"<br/>"); }); } }) }); });
AJAX技术
- AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术
- 使用Javascript向服务器提出请求并处理响应而不阻塞用户!核心对象XMLHTTPRequest。通过这个对象,您的 JavaScript 可在不重载页面的情况与Web服务器交换数据
- AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面
- jQuery中ajax功能的缩写
- $.ajax({
- url: url,
- data: data,
- success: success,
- dataType: dataType
- });
关于IP地址查询的API
- URL参数已经提供给了我们
http://apis.baidu.com/apistore/iplookupservice/iplookup?ip=你的ip‘
- 需要在请求数据中添加一个header参数,请将apikey作为参数添加到header中
headers = {"apikey": "5292d6abaf0ec95c2b7924551e50668f"};
备注 :当返回{"errNum":300003,"errMsg":"url is not parse"} 时,请校验是否传入apikey;
- 我们所请求的json格式数据返回事例
- {
- "errNum": 0,
- "errMsg": "success",
- "retData": {
- "ip": "117.89.35.58", //IP地址
- "country": "中国", //国家
- "province": "江苏", //省份 国外的默认值为none
- "city": "南京", //城市 国外的默认值为none
- "district": "鼓楼",// 地区 国外的默认值为none
- "carrier": "中国电信" //运营商 特殊IP显示为未知
- }
- }
请求后对数据的处理
- 返回的数据是一个对象的形式,我们需要将每一条数据以key-value的形式展示在页面中,使用$.each()方法遍历
- $.ajax({
- url:url,
- method: "GET",
- headers: headers,
- dataType: "json",
- success: function(data){
- var info=data.retData;
- $.each(info,function(key,value){
- $("div").append(key+":"+value+"<br/>");
- });
- }
- })
以上是关于ajax 关于IP地址查询的API的主要内容,如果未能解决你的问题,请参考以下文章
此 IP、站点或移动应用程序无权使用此 API 密钥。从 IP 地址 **** 收到的请求,引用者为空
Spring MVC 3.2 Thymeleaf Ajax 片段
html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。