2016-08-06 12 views
0

以下は私のイオンコードです。 API呼び出しを行う角度サービス。イオンアプリは、コードのためにPHPアプリケーションに接続できません

var login = function (user) 
    { 
     return $q(function(resolve, reject) 
     { 
     $http.post(API_ENDPOINT.url + '/login',user) 
      .then(function (result) 
      { 
      if(result.data.success) 
      { 
       resolve(result.data.msg); 
      } 
      else 
      { 
       reject(result.data.msg); 
      } 
      }); 
     }); 
    }; 

以下はPHPのコードです。

$app = new \Slim\Slim(); 
// Get request headers as associative array 
$headers    = $app->request->headers; 
$http_origin   = $headers['Origin']; 
$allowed_http_origins = array("http://localhost","http://localhost:80", 
    "http://localhost:8080","http://localhost:63342","null", 
    "http://localhost:8100","http://localhost:8888","http://localhost:8889"); 

if (in_array($http_origin, $allowed_http_origins)){ 
    $app->response->headers->set('Access-Control-Allow-Origin',"$http_origin"); 
} 

$app->response->headers->set('Access-Control-Allow-Methods','GET, PUT, POST, DELETE, OPTIONS'); 
$app->response->headers->set('Access-Control-Allow-Credentials','true'); 
$app->response->headers->set('Access-Control-Allow-Headers','*'); 
$app->response->headers->set('Access-Control-Allow-Origin',"$http_origin"); 


$app->post('/login/', 'Login'); 

このアプリケーションではCORSに問題があり、Access-Control-Allow-Originsが存在しないというエラーが表示されます。

+0

'Access Control-Allow-Origin'のセットを' * 'に変更しようとすると、' $ http_origin'に正しい値が含まれていないことを意味します – harishr

+0

@entre作業していない – lagfvu

+0

このような場合にIonic CLIのプロキシサーバが役立つとわかりました:http://blog.ionic.io/handling-cors-issues-in-ionic/ –

答えて

0

これは、localhostからテストするときに問題です。これは、デバイスにビルドするときに問題ありません。

CROSを回避するには、THISクロムアドオンを試すことができます。

関連する問題