问题描述
不久前我写了一篇关于这个问题的文章,Cross Domain AJAX。
如果您可以控制响应服务器,则处理此问题的最简单方法是为以下内容添加响应标头:
Access-Control-Allow-Origin: *
这将允许跨域Ajax。在 PHP 中,您需要像这样修改响应:
<?PHP header('Access-Control-Allow-Origin: *'); ?>
您可以将Header set Access-Control-Allow-Origin
*
设置放在Apache配置或 htaccess
文件中。
应该注意的是,这有效地禁用了 CORS 保护,这 。如果您不知道您特别需要使用通配符,则不应使用它,而应将您的特定域列入白名单:
<?PHP header('Access-Control-Allow-Origin: http://example.com') ?>
解决方法
我正在Sencha Touch 2
应用程序(包装在PhoneGapAjax.request
中)中创建远程
PHP
服务器。
来自服务器的响应如下:
XMLHttpRequest
无法加载http://nqatalog.negroesquisso.pt/login.php。Access-
Control-Allow- Originhttp://localhost:8888
不允许 Origin。
我该如何解决这个问题?