`

Ajax 中跨域问题的结决办法

    博客分类:
  • Ajax
阅读更多
[转]
ajax伴随的goole 的推动,越来越多的站点开始使用了,在开大ajax程序的时候会遇到很多的问题,主要有以下几个方面:
跨浏览器问题
历史后退状态问题
跨域问题
跨浏览器的问题因为现在有很多的开元的框架已经解决了,我们无需为此而烦恼。
历史后退状态问题我们可以使用一个数组来保存历史纪录,然后把这些数据村到历史对象中去,中的也可以解决,并且还有很多的开元框架给与支持,这样问题就不是很大。
跨域的问题就不是很好的解决,但是还是有办法的,一下给出一些基本的解决方案供大家选择:
使用代理,你可以使用web端的程序编写代理程序,把所有的ajax请求的数据进行转发,web程序可以使php,jsp,asp等所有的编程语言。相信大家对这种方式一定很熟悉,这里就不详细的介绍了。
使用iframe的方式来定势的刷新叶面,这种方式只是取得数据来显示,并不能真正的和求得的数据进行交互,转化成本页面的动态数据,不是很可取,应用也不是很多,我也忽略不去讨论了。
使用apache的代理功能,主要就是apache的方向代理,或者是url从定向,你也可以把其他的站点直接的挂在自己的网站上,这样的方式可能会友邦权的问题,多的九部介绍了,有兴趣的本有可以自己实践以下。
使用《script》标签的方式,这样的话就可以保正使用真正的ajax来跨域,并且可以使用返回来的数据,发誓很简单,在我们的后台程序处理后的到的结果都直接的用javascript 的方式返回,在我们的html中直接的使用返回数据的变量就可以了一个简单的例子
我们使用的html叶面
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2  <HTML>
3   <HEAD>
4    <TITLE> New Document </TITLE>
5    <META NAME="Generator" CONTENT="EditPlus">
6    <META NAME="Author" CONTENT="">
7    <META NAME="Keywords" CONTENT="">
8    <META NAME="Description" CONTENT="">
9   </HEAD>
10 <SCRIPT LANGUAGE="JavaScript" src="" id="get">
11 </SCRIPT>
12 <SCRIPT LANGUAGE="JavaScript">
13 <!--
14 function get(url)
15     {
16         var obj = document.getElementById("get");
17         obj.src = url;
18         (obj.readStatus == 200)
19         {
20             alert(xml);
21         }
22     }
23     function text()
24     {
25 get (get.php);
26     }
27 //-->
28 </SCRIPT>
29  <BODY>
30   <INPUT TYPE="button" value="CLICK ME" onclick="test()">
31  </BODY>
32 </HTML>

后台程序get.php
eche 'var xml ="asdf";';
当你点击按钮的时候就会去服务器那去你需要的js,但加在完成后就可以自己的使用变量xml了,运行代码后你会得到一个对话框显示asdf;
我来自:向东博客
  http://www.cnblogs.com/meil/archive/2007/05/22/755564.html
分享到:
评论

相关推荐

    Ajax跨域问题及其解决方案.docx

    ### Ajax跨域问题及其解决方案 #### 一、Ajax跨域问题概述 在现代Web开发中,前后端分离架构越来越流行。这种模式下,前端页面与后端服务通常部署在不同的服务器上,甚至可能位于不同的域名下。当浏览器发起对不同...

    Ajax跨域访问解决方案

    本篇将详细介绍如何解决Ajax跨域访问的问题。 1. **什么是同源策略** 同源策略是浏览器为了保护用户安全而实施的一项安全策略,它限制了来自不同源的“文档”或脚本对彼此的交互。在没有明确许可的情况下,...

    ajax跨域问题的解决办法

    ajax跨域问题的解决办法 ajax跨域问题是指在使用ajax技术时遇到的跨域限制问题,即ajax请求不能跨域访问其他域的服务器资源。这种限制是由于浏览器的同源策略所引起的,同源策略规定一个域下的脚本只能访问该域下的...

    解决ajax跨域请求问题

    解决Ajax跨域问题有多种方法: 1. JSONP(JSON with Padding):JSONP是一种利用动态插入`&lt;script&gt;`标签来绕过同源策略的方法。服务器返回一个JavaScript函数调用,带有请求的数据作为参数。例如,服务器返回`...

    ajax跨域解决办法

    【AJAX跨域解决办法】 在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下更新部分网页的技术。然而,由于浏览器的同源策略限制,AJAX请求通常只能发送到与当前页面同一源的...

    解决ajax跨域问题

    为了解决AJAX跨域问题,开发者可以采用以下几种策略: 1. JSONP(JSON with Padding) JSONP是一种绕过同源策略的方法,它利用了`&lt;script&gt;`标签不受同源策略限制的特点。JSONP的工作原理是服务器提供一个可被调用的...

    Ajax跨域问题 解决方案

    ### Ajax跨域问题解决方案 #### 一、什么是Ajax跨域 **原理:** Ajax跨域问题的核心在于浏览器的“同源策略”。同源策略是一种安全措施...通过上述方法,我们可以有效地解决Ajax跨域问题,使得跨域请求能够顺利进行。

    ajax跨域问题的解决办法.rar

    总结,解决Ajax跨域问题有多种方法,选择哪种取决于项目需求和安全考虑。JSONP适用于简单请求,CORS更灵活但需要服务器配合,代理服务器则可以完全绕过同源策略,而`document.domain`适用于同一顶级域名下的跨子域...

    Javascript跨域和Ajax跨域解决方案

    JavaScript跨域和Ajax跨域是Web开发中常见的问题,尤其在进行前后端分离或API调用时,由于浏览器的同源策略限制,不同域名、协议或端口的资源请求会被阻止,这就是所谓的“跨域”。本文将深入探讨JavaScript和Ajax...

    解决ajax不能访问本地文件问题(利用js跨域原理)

    在本文中,博主提出了一个解决AJAX本地文件访问的方法,即把原本要读取的JSON文件转换为JavaScript对象文件。例如,将`abc.json`内容转换为`var abc = {"pro": {...}}`这样的JavaScript代码,然后创建一个名为`abc....

    ajax处理跨域请求

    在Web开发中,由于浏览器的同源策略限制,JavaScript通常无法直接访问不同源(协议、域名或端口不同)的资源。然而,随着互联网应用的...在实际项目中,开发者应根据具体需求和服务器支持情况选择合适的跨域解决方案。

    html通过 ajax jsonp跨域请求接收和传送数据

    AJAX+CORS适用于现代浏览器,提供了更灵活、安全的跨域解决方案,但需要服务器端的支持。而JSONP则适用于所有支持`&lt;script&gt;`标签的浏览器,包括一些较旧版本,但只支持GET请求,且安全性较低,因为服务器可以注入...

    IE7 Ajax跨域问题

    至于压缩包中的文件名称 "《斯坦福大学开放课程:编程方法》Programming Methodology.Lecture01 -YYeTs人人影视教程组" ,这看起来是一个教育视频资源,可能包含了关于编程基础的讲解,但与Ajax跨域问题的主题无关。...

    有关Ajax跨域问题的两种解决方法

    Ajax跨域是前端开发中常见的问题,本文描述了以Google浏览器Chrome作为客户端和以Tomcat作为Web服务器的情况下的解决办法。 问题现象 当出现跨域访问的时候ajax通常会报类似如下错误: XMLHttpRequest cannot load ...

    demo跨域ajax_DEMO_ajax跨域_

    本示例“demo跨域ajax_DEMO_ajax跨域”着重解决C#后端与JavaScript前端之间的跨域限制。这里我们将深入探讨什么是跨域、为何会产生跨域问题以及如何通过C#和Ajax实现跨域通信。 首先,我们需要了解什么是跨域。根据...

    cors技术解决ajax跨域

    **CORS技术详解:解决AJAX跨域问题** 在Web开发中,由于浏览器的同源策略限制,AJAX请求只能向同一源(协议+域名+端口)发送,这在跨域请求时会遇到障碍。为了解决这个问题,CORS(Cross-Origin Resource Sharing,...

    Ext.Ajax.request跨域

    这篇博客文章可能详细介绍了如何在ExtJS应用中解决这个问题。 同源策略是浏览器为了保障用户安全而设定的一项机制,它禁止了一个源(协议+域名+端口)的文档或脚本获取或操作另一个源的资源。当需要跨域请求时,...

Global site tag (gtag.js) - Google Analytics