今天做了一个利用jQuery的getJSON进行跨域请求,并取得返回值,结果少写了几个参数纠结了两个小时,现在写下来以此为戒吧!
客户端的js代码:
function fans(){
$.getJSON("http://xxx.test.com/test/page.jsp?tags=cat&tagmode=any&format=json&jsoncallback=?",
function(data){
alert(data.type);
});
}
后面的tags=cat&tagmode=any&format=json&jsoncallback=?这几个参数不能少
服务器端代码:
String jsoncallback=request.getParameter("jsoncallback");
HashMap map = new HashMap();
map.put("type","1");
String json = JSONObject.fromObject(map).toString();
out.print(jsoncallback+"("+json+")");
注意:输出参数需要写成jsoncallback+"("+json+")",要不返回参数显示不出来
分享到:
相关推荐
本篇文章将详细讲解如何利用jQuery的jsonp方法实现Ajax跨域请求,以及如何在服务器端使用.Net的*.handler和WebService来返回JSON数据。 首先,理解JSONP的基本原理。JSONP是一种非官方的协议,通过动态创建`...
本例中的“getJSON”很可能指的是jQuery库中的getJSON方法,它支持JSONP机制来实现跨域数据获取。 JSONP的工作原理是利用`<script>`标签不受同源策略限制的特点,通过动态创建`<script>`元素并设置其src属性为...
本文主要讨论的是通过JQuery实现跨域请求JSON数据的方式——JSONP。 #### 三、JSONP原理及使用 **JSONP**是一种绕过同源策略的技术,它利用了`<script>`标签不受同源策略限制的特点。当使用JSONP进行跨域请求时,...
// 使用$.getJSON进行跨域请求 $.getJSON('http://otherdomain.com/api', {param1: 'value'}, function(data) { console.log(data); }, 'jsonp'); ``` 在这个例子中,jQuery会自动处理JSONP请求,添加`callback=?`...
### jQuery $.getJSON() 跨域请求知识点总结 #### 跨域请求基础 在Web开发中,跨域请求是一个非常常见的问题,它的本质是浏览器的同源策略。同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源...
jQuery,作为一个强大的JavaScript库,提供了便捷的方式来处理这种问题,特别是通过其Ajax功能进行跨域请求。本示例"Jquery跨域Ajax请求测试"将详细讲解如何利用jQuery实现这一功能。 首先,了解同源策略是理解跨域...
jQuery提供了`.ajax()`和`.getJSON()`两个方法来实现JSONP。下面将详细解释这两个方法以及JSONP的工作原理。 1. **jQuery的`.ajax()`方法:** 在提供的代码示例中,`$.ajax()`方法用于发起一个跨域GET请求。设置`...
`jQuery.getJSON`也支持JSONP(JSON with Padding),这是一种跨域数据获取的策略。通过动态创建`<script>`标签,将回调函数名作为参数传递给服务器,服务器返回的JSON数据包裹在该回调函数中,从而实现跨域数据交换...
在互联网开发中,jQuery 是一个广泛使用的 JavaScript 库,提供了许多便利的功能,其中包括与服务器进行异步数据交换的 AJAX 方法和 `getJSON` 函数。然而,由于浏览器的安全策略,前端应用不能随意地从不同源获取...
在JavaScript的世界里,由于同源策略的限制,浏览器禁止了不同源之间进行AJAX通信,但JSONP(JSON with Padding)作为一种巧妙的方式,允许我们绕过这个限制,实现在jQuery中进行跨域请求。本篇文章将深入探讨JSONP...
JSONP(JSON with Padding)是解决这一问题的传统方法之一,而jQuery的getJSON方法在实现跨域请求时,也会采用类似JSONP的方式。 首先,我们来看一下JSONP的基本概念。JSONP是一种利用`<script>`标签可以跨域请求...
开发者们通常利用jQuery的ajax和getJson方法来发送异步请求,获取服务器上的json数据。但在开发中,尤其是在与第三方系统交互时,常常会遇到浏览器同源策略的限制,这就是所谓的跨域问题。所谓同源策略,简单来说...
jQuery中的`$.ajax()`方法是进行跨域请求的主要工具。要开启跨域,需要设置`xhrFields`选项中的`withCredentials`属性为`true`,并设置`crossDomain`为`true`。例如: ```javascript $.ajax({ url: '...
`getJSON()`是jQuery提供的一个便捷方法,用于通过Ajax请求获取JSON格式的数据。在这个例子中,我们将深入探讨如何使用jQuery的`getJSON()`函数与Servlet进行交互。 首先,我们来看`getJSON()`的基本用法。`getJSON...
在jQuery中,我们可以使用`$.ajax()`或`$.getJSON()`方法。当设置`dataType`为'jsonp'时,jQuery会自动处理JSONP请求。JSONP是一种绕过同源策略的方法,它通过在目标服务器上返回一个JavaScript函数调用,将数据作为...
具体实现过程中,开发者可能使用了jQuery的`$.ajax()`或`$.getJSON()`方法发起跨域请求。例如: ```javascript $.ajax({ url: 'http://example.com/weather', type: 'GET', dataType: 'jsonp', success: ...
例如,以下是一个简单的使用 $.getJSON 进行跨域请求的例子: 服务器端(如 PHP): ```php // 假设这是服务器返回的 PHP 文件,返回 JSON 数据 $arr = array("name" => "zhangsan", "age" => 20); $jarr = json_...
jQuery 提供了一些方法来应对这种情况,允许我们在特定情况下进行跨域请求。 ### 1. JSONP(JSON with Padding) JSONP 是一种规避同源策略的方法,它利用`<script>`标签可以跨域加载资源的特性。在描述中提到的$....
1. 代理服务器:如果服务器不支持JSONP或CORS,可以通过在服务器上设置一个代理,将跨域请求转发到目标服务器。 2. HTML5的Window.postMessage:适用于两个窗口之间的跨域通信,如弹窗或iframe。 六、安全与性能...