解决AJAX 跨域访问完整解决方案

woshiguopan521

woshiguopan521

2016-02-19 20:35

今天图老师小编给大家精心推荐个解决AJAX 跨域访问完整解决方案教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

在一项目中由于需要使用js事件中使用AJAX获取数据信息,但这其中涉及到跨域取数据的问题。在网上搜了好半天最后发现了ADAJAX这样一个东东,貌似可以解决这样的问题:

advAJAX.get({
    url: "http://www.example.com/page.html",
    onSuccess : function(obj) { alert(obj.responseText); }
});
需要先引入:adajax.js(可以下面网站下载)

详细地址:http://advajax.anakin.us/index-en.htm

但是这最终还不能解决我的问题,我需要将从其他网站获取的内容强制转化为js可执行脚本:

advAJAX.get({
    url: "http://www.abc.com/page.html",
    onSuccess : function(obj) { eval(obj.responseText); }
});
这时候问题又出来,在IE中提示有安全警告,然后便不能正确执行了,有些郁闷了,在FIREFOX中根本都没有任何反应,通过调试跟踪都无法执行到onSuccess事件来。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

弄了很久,最终决定直接在js脚本中引入url作为js脚本嵌套执行,这下好像是通关了啊。

var requestUrl='http://www.sample.com/UI/AdMessage/GetAdMessageByKey.aspx?G&SiteId='+SiteId+'&SiteDomain='+SiteDomain+'&Index='+linkId+'&KeyId='+k.id+'&stamptime=' + new Date().getTime();
              
      LoadAdScript(requestUrl);

 

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

function LoadAdScript(script)
       {
       var adScript=document.getElementById("adScript");
       // var adCss=document.getElementById("AdCss");
        if(adScript)
         document.body.removeChild(adScript);
          // if(adCss) head.removeChild(adCss);
          
        var l=CreateEl("script");
        l.setAttribute("type","text/javascript");
      
        l.setAttribute("src",script);
     
        l.setAttribute("id","adScript");
       document.body.appendChild(l);
      
       }
值得注意的是GetAdMessageByKey.aspx输出必须为js脚本(比如:Response.write("alert('hello my god');");类似文本

展开更多 50%)
分享

猜你喜欢

解决AJAX 跨域访问完整解决方案

Web开发
解决AJAX 跨域访问完整解决方案

ajax跨域访问的解决方案

Web开发
ajax跨域访问的解决方案

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

JQuery Ajax 跨域访问的解决方案

Web开发
JQuery Ajax 跨域访问的解决方案

ajax后退解决方案

Web开发
ajax后退解决方案

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

解决ajax跨域问题的实例

Web开发
解决ajax跨域问题的实例

ajax中文乱码解决方案

Web开发
ajax中文乱码解决方案

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

xml和html的不同之处

xml和html的不同之处

Ajax post传值示例

Ajax post传值示例
下拉加载更多内容 ↓