`
web001
  • 浏览: 99032 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

轻量级网站建设jsonp跨域简单实例

阅读更多

浏览器的同源策略,限制脚本程序只能和同协议,同域名,同端口的脚本进行交互,包括共享和传递变量,cookie的传递。尽管浏览器不允许页面脚本跨域读取数据,但是允许html引用跨域的资源,比如脚本程序,css,图片,等等,因为script,iframe的src是不存在跨域的。

 

$.get("http://www.hualai.net.cn/news/website.jsp",  
{}, function(data){  
alert(' error:'+data)  
}, "html"); 

比如上面的请求,因为是跨域读取数据,所以,无法获取想要的数据jsonp是非官方协议,它是在服务端生成script tags返回到客户端,在客户端通过javscript callback形式实现跨域访问。 

 

jsonp原理是客户端定义一个callback,然后把callback名字传送至服务端,服务端生成json数据,然后以javascript的方式,生成一个以callback名字的function的javascript函数执行形式,将json数据以入参方式放到function中,就 生成了一个js的函数执行语法的文档,传到客户端。客户端浏览器解析script,执行服务端返回的javascript片段,返 回的数据作为参数,传入到客户端定义的callback中动态执行。 

实例 

 

http://www.hualai.net.cn/news/website.jsp  

<script type="text/javascript">      
        function sayHello(result){       
           alert(result());       
        }       
</script>    
<script type="text/javascript"src="http://www.hualai.net.cn/news/website2.jsp?callback=sayHello"></script>

 

http://www.hualai.net.cn/news/website2.jsp

 

 <%  
        String script="function show(){ return 'hello';}";  
        //String script="{name:'yuyong'}";  
        String callback=request.getParameter("callback");  
        out.println(callback+"("+script+")");  
%>

通过jsonp,完美的实现了跨域。

1
3
分享到:
评论

相关推荐

    Vue2.0 vue-source jsonp 跨域请求

    vue-resource是一个轻量级的HTTP客户端,它支持XMLHttpRequest (XHR) 和 JSONP 请求。首先,你需要通过npm或yarn安装这个库: ```bash npm install vue-resource # 或 yarn add vue-resource ``` 安装完成后,在你...

    bboss mvc 通过jsonp实现跨站跨域远程访问

    bboss MVC是一个基于Java的轻量级MVC框架,它提供了丰富的API和配置选项,使得开发者可以方便地构建Web应用。 首先,理解JSONP的基本原理是至关重要的。JSONP的工作机制是,前端通过`&lt;script&gt;`标签的`src`属性向...

    JSON和JSONP(含jQuery实例)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,但也使用了类似于C家族语言(包括C、C++、C#、Java、JavaScript、Perl、Python等)的习惯,这使得JSON成为理想的...

    jsonp格式的数据处理实例源码

    在ASP.NET中,ASHX文件是一种轻量级的HTTP处理器,用于处理自定义的HTTP请求。在JSONP的场景下,ASHX处理程序接收请求,解析请求中的`callback`参数,然后将数据以JSON格式返回,并将其包裹在`callback`指定的函数名...

    PHP下ajax跨域的解决方案之jsonp实例分析.docx

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它是独立于语言的,但与JavaScript语法非常相似。例如: ```javascript var person = { "name": "test", "age": "25", "sex": "男" }; var ...

    纯servlet实现JSONP

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析和生成。而JSONP是在JSON的基础上增加了一个回调函数名,使得JSON数据能够被JavaScript调用执行。其基本...

    js json ajax jsp 跨域訪問的例子

    JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器解析和生成,因此常作为AJAX传输的数据格式。 跨域访问是由于浏览器的同源策略限制,即一个域下的文档或...

    day17代码:springBoot整合JSONP

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSONP是一种处理跨域数据的方式,通过动态创建`&lt;script&gt;`标签,将JSON数据包裹在一个函数调用中,...

    jquery-jsonp-master.zip_jsonp

    `jquery-jsonp-master.zip`是一个包含jQuery JSONP实现的压缩包,适用于学习和应用轻量级的JSONP解决方案。 首先,我们需要了解JSONP的基本原理。由于同源策略的限制,JavaScript通常不能直接向其他域名发送Ajax...

    js+jsp+json+tomcat跨域访问

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在跨域访问中,JSON通常作为数据传输的载体,因为它可以被JavaScript轻松处理。 jQuery是一个流行的...

    什么是json和jsonp,jQuery json实例详详细说明

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,设计用于人类可读且易于机器解析和生成。它基于JavaScript的一个子集,尤其适合于Web应用程序之间的数据交换。JSON采用完全独立于语言的文本格式,...

    通过jsonp获取json数据实现AJAX跨域请求

    在AJAX中,JSON常被用作数据交换格式,因为它是轻量级的,且JavaScript原生支持解析和生成JSON对象。JSON的语法结构类似于JavaScript的对象和数组,使得它非常易于理解和使用。 在上述示例中,使用jQuery库实现了...

    AJAX跨域请求JSONP获取JSON数据的实例代码

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它是JavaScript对象字面量表示法的一个子集。由于其结构与JavaScript语法紧密相关,因此JSON数据可以在JavaScript中直接解析和生成,无需额外的编...

    通过实例解析json与jsonp原理及使用方法

    1.json与jsonp的引入 在ajax中 JSON用来解决数据交换问题,而JSONP来实现跨域。 备注:跨域也可以通过服务器端代理来解决;... 3) 轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4) 可读性较强,虽然比不上

    ajax跨域访问WCP搜索,返回JSON数据

    JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。 在描述中提到,前端是一个搜索框,它通过AJAX向后端WCP(Web Content Platform)开源项目发送...

    jQuery+JSONP+artDialog 实现虾米音乐的检索、选取和播放

    artDialog是一个轻量级的JavaScript对话框插件,它提供了丰富的定制选项,如尺寸、样式、按钮等,使得在网页上创建美观且功能完备的对话框变得简单。在虾米音乐的案例中,artDialog用于显示歌曲详情,同时提供播放...

    AJAX的跨域与JSONP(为文章自动添加短址的功能)

    JSONP因其简单和轻量级的特性,在只支持GET请求的跨域场景中广泛应用。然而,对于需要POST请求或其他高级功能的情况,通常会依赖于CORS(Cross-Origin Resource Sharing)机制,它提供了更灵活的安全跨域策略。

    JSONP原理及应用实例详解

    3、轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4、可读性较强,虽然比不上 XML 那么一目了然,但在合理的依次缩进之后还是很容易识别的; 5、容易编写和解析,当然前提是你要知道数据结构; JSON 的...

Global site tag (gtag.js) - Google Analytics