访问控制 - 仅在android中允许原始错误,但在浏览器中运行时不允许

时间:2015-08-10 06:49:01

标签: php angularjs cordova

我正在使用anguarJS为前端和PHP(超薄框架)构建一个android的phonegap应用程序。 api托管在不同的服务器上,所以基本上它是跨站点xhr请求。我把访问控制头作为*放在php和htaccess中,但我收到多个头错误,所以我从php中删除它。

当我在浏览器中运行角度应用程序时,它不会抛出任何CORS错误,但是当我将其构建到phonegap应用程序时,它会抛出访问控制头不存在错误。我通过纹波仿真器检查了这个错误。但是标题存在,我可以在作为角度应用程序运行时看到它。

可能是什么问题。?请帮我解决这个问题..

<?php
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type, Depth, User-Agent, X-File-Size,X-Requested-With, If-Modified-Since,X-File-Name, Cache-Control, x-hash-key, x-req-timestamp, user-language-pref, Content_Language");
mb_internal_encoding('UTF-8');
ob_start();
require('vendor/autoload.php');
$app = new \Slim\Slim(array());

// fixing angular options request problem
$app->map('/:x+', function($x) {
    http_response_code(200);
})->via('OPTIONS');

// route definitions 

$app->run();

这是我后端代码的第一行。所以我认为前端必定是错误的。

0 个答案:

没有答案