域、子域请求错误


Domain, subdomain requests error

我有我的iframe,如下所示:

<iframe src="http://api.example.com/html/31" id="fa-iframe" scrolling="No" frameborder="0" style="height: 513px; width: 597px; "></iframe>

还有这样的JavaScript:

$.get("/inc_appdl_main.php", { id=args },function(data) {});

该网站正在http://example.com...

我想在我的目录inc_appdl_main.php中访问此文件。

但是,当我发出请求时,..互联网不允许我这样做,因为它会解释:

http://example.com

http://api.example.com

作为两个独立的域..虽然两者都是相同的网站..使用不同的网址。API 只是 get 请求到达的文件夹。

我有两个选项可以在我的获取中使用。也。。

.get(" http://api.example.com/inc_appdl_main.php", { id=args },function(data) {});

这将给我"404"

 .get(" http://example.com/inc_appdl_main.php", { id=args },function(data) {});

这会给我一个错误,我无法跨域发布

虽然网站是同一个网站,但网址是不同的..我需要访问这个文件..

inc_appdl_main which sits on the same root directory...is there a way?

几种可能的解决方案:

  1. 配置您的服务器,以便它可以接受http://api.example.com/inc_appdl_main.php请求,像http://example.com/inc_appdl_main.php"一样处理它。这可能是最简单的,因为您可以控制服务器。

  2. 如果来自api.example.com的响应是 HTML 页面,请向其添加 JavaScript 以将document.domain设置为 example.com

  3. 要求用户使用与跨源资源共享 (CORS) 兼容的浏览器,并在服务器上回复 CORS 预检请求等。

在 inc_appdl_main.php 中设置 header() 以允许跨源请求

header('Access-Control-Allow-Origin: *');