0

我知道我可以通过创建这样的中间文件调用来绕过相同的域策略:

$.getJSON('service_facade.php', function(data) {

        options.series = data;
    // Create the chart
    var chart = new Highcharts.Chart(options);
});

service_facade.php 的内容在 php 中如下所示:

print_r($_GET["http://myservice.com/parameters"]);

问题是我正在访问的图表没有呈现。我做错了吗?

4

2 回答 2

2

这是因为同源策略将 Ajax 请求限制在页面来自的同一域。这意味着您无法访问域外的 Ajax API。

有一个称为跨域资源共享 (CORS)的规范可以解决这个问题,但我不知道这是否正在实施。

于 2012-04-25T17:52:40.367 回答
0

解决同源策略的方法是创建一个 php 文件或类似的文件来为您进行服务交互。它不像 AJAX 那样受策略约束。一旦您调用了执行远程域调用并返回数据的外观 php 文件,您就可以通过 php.ini 访问该数据。

于 2012-10-30T17:50:01.740 回答