1.一个封装的例子
$$ = function(win){
var isIE = !-[1,];
doc = win.document;
head = doc.getElementsByTagName('head')[0];
function request(url, success, timestamp){
var script = doc.createElement('script');
function callback(){
if(typeof jsonp != 'undefined'){
success(jsonp);
}else{
//success("");
//alert('warning: jsonp did not return.');
alert("Shopalと通信ができません");
}
// Handle memory leak in IE
script.onload = script.onreadystatechange = null;
if( head && script.parentNode ){
head.removeChild(script);
}
}
if(isIE){
script.onreadystatechange = function(){
var readyState = this.readyState;
if(readyState == 'loaded' || readyState == 'complete'){
callback();
}
};
}else{
script.onload = function(){
callback();
};
}
if(timestamp){
url += '?ts=' + (new Date).getTime();
}
script.src = url;
head.insertBefore(script, head.firstChild);
}
return {load:request};
}(this);
----------------------------
原理:
<script type="text/javascript">
// This is our function to be called with JSON data
function showPrice(data) {
alert("Symbol: " + data.symbol + ", Price: " + data.price);
}
var url = “ticker.js”; // URL of the external script
// this shows dynamic script insertion
var script = document.createElement('script');
script.setAttribute('src', url);
// load the script
document.getElementsByTagName('head')[0].appendChild(script);
</script>
http://club.topsage.com/thread-327033-1-1.html
分享到:
相关推荐
在实际应用中,我们可以使用 JSONP 来实现跨域请求,以便从其他域名下的服务器获取数据。但是,我们需要注意的是,使用 JSONP 会存在安全风险,因为它可以被恶意攻击所利用。 在使用 JSONP 时,我们需要注意以下几...
【Ajax跨域请求WebService.asmx】是一个常见的Web开发技术应用场景,主要涉及到JavaScript的Ajax技术、C#编程语言以及ASP.NET的WebService组件。Ajax(Asynchronous JavaScript and XML)是一种在不刷新整个页面的...
在Web开发中,由于同源策略的限制,JavaScript通常无法直接访问不同源的资源,但随着Web服务的广泛应用,跨域请求的需求日益增加。jQuery,作为一个强大的JavaScript库,提供了便捷的方式来处理这种问题,特别是通过...
AJAX本身不支持跨域,但是通过CORS(Cross-Origin Resource Sharing,跨源资源共享)机制,可以实现AJAX的跨域请求。服务器需要在响应头中添加`Access-Control-Allow-Origin`字段,允许指定的源进行跨域请求。...
这个"ajax跨域请求demo.zip"压缩包提供了一个关于如何实现Ajax跨域请求的示例,涉及到前后端的交互。 首先,我们关注"前端代码"部分。前端通常使用JavaScript库如jQuery来实现Ajax请求。jQuery的`$.ajax()`方法是...
JSONP实现跨域 常用的jquery实现跨域调用 $.ajax({ url: "http://127.0.0.1/~chenjiebin/mycode/php/crossdomain/index.php", dataType: "jsonp", jsonp: "callback", context: document.body, success: ...
1. **CORS(Cross-Origin Resource Sharing)**:服务器可以通过设置响应头`Access-Control-Allow-Origin`来允许特定的源进行跨域请求。例如,服务器端可以在HTTP响应头中添加`Access-Control-Allow-Origin: *`,...
**AJAX和JSONP跨域请求的实现过程** 1. **AJAX跨域**: 通常,AJAX请求受到同源策略限制。为实现跨域,我们可以使用CORS(Cross-Origin Resource Sharing)机制。服务器需要在响应头中添加`Access-Control-Allow-...
AngularJS,作为一个强大的前端框架,提供了多种方式来实现跨域请求。本文将详细讲解AngularJS中的$http服务如何实现跨域请求。 首先,我们来看AngularJS中的核心服务$http。它是一个基于XMLHttpRequest对象(XHR)...
这里将详细讲解如何通过jQuery的AJAX实现跨域请求。 首先,了解什么是CORS(Cross-Origin Resource Sharing,跨源资源共享)。CORS是一种机制,它使用额外的HTTP头来告诉浏览器允许一个域上的网页访问另一个域上的...
以`FlyJSONP`为例,这是一个轻量级的JavaScript库,用于实现JSONP跨域请求。使用`FlyJSONP`需要以下步骤: 1. 引入`FlyJSONP`库的JavaScript文件,如`<script src="http://www.cxyblog.com/flyjsonp.min.js">...
在Web开发中,Ajax(Asynchronous JavaScript and XML)技术被广泛用于实现页面的异步更新,使得用户无需刷新整个页面就能获取和提交数据。然而,跨域请求是Ajax的一个常见问题,由于浏览器的同源策略限制,Ajax请求...
这篇博客将探讨如何使用jQuery实现跨域请求以及如何获取返回值。 首先,我们需要理解什么是跨域请求。跨域请求是指一个域下的文档或脚本尝试请求另一个域下的资源,由于安全原因,通常会被浏览器阻止。但为了实现...
本篇文章将通过一个具体的示例(JSP页面+后台实例)来详细介绍如何实现AJAX跨域请求。 #### 二、同源策略概述 同源策略(Same-origin policy)是浏览器的一项安全措施,用于限制一个源上的网页脚本与另一个源上的...
跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报跨域请求百度天气预报
为了解决这个问题,很多前端框架提供了相应的解决方案,如jQuery的`$.ajax`方法支持JSONP等方式来实现跨域请求。 本文主要介绍如何在JSP项目中使用`ajaxFileUpload.js`插件解决跨域文件上传的问题,并提供了一个...
但有几种方法可以实现跨域请求: 1. **后台设置CORS**:在后台服务器上,通过设置HTTP响应头`Access-Control-Allow-Origin`,可以允许特定或所有域名进行跨域请求。例如: ```php header("Access-Control-Allow-...
cross-request 3.1 YApi 跨域请求 谷歌浏览器
本文将深入探讨一个具体的JavaScript跨域请求包装函数,并通过示例来展示其实际应用。 #### 一、理解跨域请求 跨域请求是指在一个域名下的页面发起对另一个域名下的资源的请求。浏览器为了保护用户隐私和数据安全...
本篇文章将详细讲解如何利用jQuery的jsonp方法实现Ajax跨域请求,以及如何在服务器端使用.Net的*.handler和WebService来返回JSON数据。 首先,理解JSONP的基本原理。JSONP是一种非官方的协议,通过动态创建`...