`

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跨域问题及其解决方案.docx

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

    ajax跨域问题的解决办法

    ajax跨域解决办法

    本资源主要介绍了AJAX跨域的解决办法,以及解决方案间的比较

    ajax跨域问题的解决办法

    一般的ajax写法不能跨域,本文档提出了解决ajax不能跨域的问题的方法

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

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

    Ajax通过代理跨域访问

    Ajax通过代理来解决跨域访问获取数据,里面描述了两种跨域访问的解决方法

    IE8、IE9 Ajax 跨域解决办法

    解决ie8、9Ajax跨域问题(前端):jsp引入此js,Jquery Ajax正常写

    解决ajax跨域问题

    这篇文章详细的分析了有关在使用ajax的时候出现的跨域需求问题和解决方案,为大家提供更多的解决问题的方法和思路

    详解ajax跨域问题解决方案

    主要介绍了详解ajax跨域问题解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    jquery中ajax处理跨域的三大方式

    因此要实现跨域,一般有以下几个方法: 一、处理跨域的方式: 1.代理 2.XHR2 HTML5中提供的XMLHTTPREQUEST Level2(及XHR2)已经实现了跨域访问。但ie10以下不支持 只需要在服务端填上响应头: header("Access-...

    Ajax请求跨域问题解决方案分析

    主要介绍了Ajax请求跨域问题解决方案,结合具体实例形式分析了Ajax请求跨域问题的原理、解决方法及相关操作注意事项,需要的朋友可以参考下

    Ajax跨域的完美解决方案

    这里对跨域做个简单介绍以及提供几种解决办法。  由于浏览器实现的同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源,所以AJAX是不允许跨域的。这里提供自己常用的三种方法: 1、jsonp...

    关于C#中ajax跨域访问问题

    最近因项目需要,需要跨域请求访问数据。跨域访问是指什么? [跨域]:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。所谓同域是指,域名,协议,端口均...

    ajax跨域,这应该是最全的解决方案了

    本文只专注于ajax请求跨域(ajax跨域只是属于浏览器"同源策略"中的一部分,其它的还有Cookie跨域iframe跨域,LocalStorage跨域等这里不做介绍),内容大概如下:什么是ajax跨域原理表现(整理了一些遇到的问题以及解决...

    SpringBoot解决ajax跨域问题的方法

    主要为大家详细介绍了SpringBoot解决ajax跨域问题的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    JSONP三种方式解决跨域问题

    1、地址...演示跨域问题以及跨子域名解决方法 2、地址http://a.test.com:8888/testAjaxCross/public/jsonp.do 演示jsonp解决跨域问题的三种方案jsonp、$getJSON、$ajax等

    解决跨域的几种方法.zip

    解决跨域问题的几种方法.zip 几种跨域cors的方法 ajax跨域 json跨域 socket跨域 canvas跨域 同源策略限制

    如何快速解决JS或Jquery ajax异步跨域的问题

    如何快速解决JS或Jquery ajax异步跨域的问题呢?下面小编就为大家分享一篇快速解决Jquery ajax异步跨域问题的方法,希望对大家有所帮助。一起跟随小编过来看看吧

    JSONP跨域GET请求解决Ajax跨域访问问题

    本文主要是介绍了JSONP跨域是如何实现的,并探讨下JSONP跨域的原理。以及采用JSONP跨域GET请求解决Ajax跨域访问问题,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics