2013-08-21 84 views
0

我即两个网站的访问JSON文件:从另一个域

www.siteone.com 
www.sitetwo.com 

现在我已经从www.sitetwo.com 获得通过脚本的数据显示www.siteone.com数据因为我必须得到特别的数据,我传递变量从www.siteone.comwww.sitetwo.com这样的:

//script in www.siteone.com 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     window.$vars = { 
      id:"form" 
     }; 
</script> 

www.sitetwo.com,我有以下脚本:

//script in www.sitetwo.com 
<script type="text/javascript"> 
var k = window.$vars.id; 
$("#form").dform("http://www.sitetwo.com/"+k+'.json', function(data) { 

      this 
      data 

     }); 
</script> 

这里,我从siteone传递给站点2的值“id”被脚本正确接收。但由于crossdomain,我无法打开form.json文件。以下错误被抛出:

XMLHttpRequest cannot load http://www.sitetwo.com/form.json. Origin http://www.siteone.com is not allowed by Access-Control-Allow-Origin. 

如何访问form.json从www.siteone.com

+0

JSONP就是答案。你需要找到一种方法来使用这个'dform' ajax调用的jsonp。 – SachinGutte

+0

dform是从该页面中加载的另一个脚本的函数。如何在这些情况下有效使用jsonp? –

+0

我还没有使用过这个dform脚本。使用jQuery ajax,您可以通过将dataType设置为jsonp来轻松使用jsonp。 – SachinGutte

回答

1

您可以从服务器端脚本发送额外的头文件。

header("Access-Control-Allow-Origin: http://www.sitetwo.com"); 

Access-Control-Allow-Origin Multiple Origin Domains?

+0

它涉及配置服务器。但是我们不能直接在脚本中使用这个头文件? –