请求方
jQuery.support.cors = true; $.ajax({ crossDomain: true, type:"GET", url: "http://***/test.php?m=android&p=guminbao&i=get_report&v=3.0&t=14777242277&s=d00763fefb105b8b703b82082cd7df23", dataType:"json", headers:{"deviceid":"1234567890","userid":"1111111111","network":"wifi","accept-encoding":"gzip","charset":"utf-8"}, data:{m:"android",p:"guminbao","v":"1","i":"get_report","t":"14777242277","s":"d00763fefb105b8b703b82082cd7df23"}, success:function(data){ } });
回应方
header("Access-Control-Allow-Headers:charset,deviceid,network,userid");
header("Access-Control-Allow-Methods:*");
header("Access-Control-Allow-Origin:*");
header("Access-Control-Request-Headers:charset,deviceid,network,userid");
其中 Access-Control-Allow-Headers:charset,deviceid,network,userid 需要包括 请求方中的所有header
传送 JSON
<script language="javascript"> function getList(key,page) { $.ajax({ url: "http://ftp92841.host191.web519.com/test/a.php", dataType:"jsonp", jsonp:"remote", data: "key="+key, success:function(data){ var ht = ''; $.each(data, function(i,val){ ht += val.name+'<BR>'; }); $("#show").html(ht); } }); } getList('323d','3'); </script>
<?php $adf = $_REQUEST['remote']; //asdf为客户端传过来的参数,可以自行设定。 $k = $_REQUEST['key']; $str = "[{'id':'1','name':'".$k."1'},{'id':'2','name':'".$k."2'}]"; $str = $adf.'('.$str.')'; echo $str; ?>
如果是单个的HTML 建议使用 base64 封装
又或者是 urlencode封装
encodeURIComponent
decodeURIComponent
function getList(key,page) { $.ajax({ url: "http://ftp92841.host191.web519.com/test/a.php", dataType:"jsonp", jsonp:"remote", data: "key="+key, success:function(data){ var outhtml = $.base64.decode(data[0].html); $("#show").html(outhtml); } }); } getList('323d','3'); </script>
<?php $adf = $_REQUEST['remote']; //asdf为客户端传过来的参数,可以自行设定。 $k = $_REQUEST['key']; $html = base64_encode('<object width="100%" height="100%" type="application/x-shockwave-flash" data="http://static.youku.com/v1.0.0329/v/swf/loader.swf" id="movie_player"> <param name="allowFullScreen" value="true"> <param name="allowscriptaccess" value="never"> <param value="opaque" name="wmode"> <param name="flashvars" value="VideoIDS=XNTY0MTkxNTI4&ShowId=0&Cp=0&Light=on&THX=off&unCookie=0&frame=0&Tid=0&isAutoPlay=true&Version=/v1.0.0858&show_ce=0&winType=interior"> <param name="movie" value="http://static.youku.com/v1.0.0329/v/swf/loader.swf"> </object>'); $str = "[{'html':'".$html."'}]"; $str = $adf.'('.$str.')'; echo $str; ?>
相关推荐
怎样实现Ajax 跨域访问的五种方法, 怎样实现Ajax 跨域访问的五种方法
Ajax通过代理来解决跨域访问获取数据,里面描述了两种跨域访问的解决方法
解决了在JSP中的AJAX不能跨域访问的问题
Ajax跨域访问的示例(ASP.NET Web)
ajax跨域访问
Ajax跨域访问解决方案,访问第三方网站的资源
html通过 ajax jsonp跨域请求接收和传送数据 使用HTML页面与后台跨域交互,获得后台数据或传输数据给后台
个人学习时编写的代码,该案例用于演示Ajax的跨域访问问题。!!!补充说明:导入工程时需要选择导入maven工程!上传仅为学习交流,也为自己下载方便!水平有限不喜勿喷。在README.txt中有对项目的详细说明!
本资源主要介绍了AJAX跨域的解决办法,以及解决方案间的比较
NULL 博文链接:https://exceptioneye.iteye.com/blog/1405495
解决AJAX中跨域访问出现''没有权限''的错误
Jquery跨域访问Web服务的demo源码
可以将book.aa.com用iframe添加到 www.aa.com的某个页面下,在www.aa.com和iframe里面都加上document.domain = "aa.com",这样就可以统一域了,可以实现跨域访问。就和平时同一个域中镶嵌iframe一样,直接调用里面的...
NULL 博文链接:https://chun521521.iteye.com/blog/1935516
NULL 博文链接:https://jacky68147527.iteye.com/blog/261877
AJAX(XMLHttpRequest)进行跨域请求方法详解
主要从三方面来通过jsonp来实现ajax跨域问题: 1.javascript方法 2.jquery $.ajax方法 3.jquery $.getJSON方法 不看会后悔的!