2016-05-25 9 views
0

私はIonicフレームワークとAngularJSで作業しています。私はMysqlからデータを取得し、PHPを使用してJSONにデコードして、Ionic Appで使用できるようにしたいと考えています。私は、ブラウザで私のアプリを実行すると、ここで anglejs、ionic、json decode with php

は、コンソールが私にこのエラー

XMLHttpRequest cannot load http://***Here Was My Url***/episodes.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access. 

コントローラ用のコードを与えた私のPHPコード

<?php 

/* 

Here was my php codes to get all data from mysql and assign it to $episode array 

*/ 

header('Content-Type: text/javascript; charset=utf8'); 
header('Access-Control-Allow-Origin: *'); 
header('Access-Control-Max-Age: 3628800'); 
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); 

echo json_encode($episode); 


//close the db connection 
mysqli_close($connection); 

ある

$scope.posts = []; 
var Url = "http://here was my url/episodes.php"; 

$http.get(Url) 
.success(function(response){ 
    console.log("Reveived getPosts via HTTP: ", response, status); 
    angular.forEach(response, function(child){ 
    $scope.posts.push(child); 
    }); 
}) 
.error(function(response, status){ 
    console.log("Error while received response. " + status + response); 
}); 

でもw鶏は、私は、配列がこの http://i.imgur.com/lI2ihb9.png

は、あなたがそれを解決するために私を助けることを願って、私に与えた実際のデバイスでアプリケーションを実行します。

答えて

0

また、あなたもあなたの.htaccessファイルにこれを追加することができ

あなたのindex.phpファイルに
// Allow from any origin 
if (isset($_SERVER['HTTP_ORIGIN'])) { 
header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}"); 
header('Access-Control-Allow-Credentials: true'); 
header('Access-Control-Max-Age: 86400'); // cache for 1 day 
} 
// Access-Control headers are received during OPTIONS requests 
if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') { 

if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD'])) 
    header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");   

if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS'])) 
    header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}"); 

} 

これを追加します。

Header add Access-Control-Allow-Origin "*" 
Header add Access-Control-Allow-Methods: "GET,POST,OPTIONS,DELETE,PUT" 
+0

それでも同じ問題:( –

+0

をヘッダを追加します(この構文を試してみてください)、$ http({メソッド: "Get"、 url: '...'、 ヘッダー:{'Content-Type': 'application/x-www-form-urlencoded'} }) 。成功(function(response){//スタッフ }); ' –

+0

まだ同じ問題が発生しています。 WordPressのサイトからWP-REST-APIを使用していますが、自分のコードを使用すると動作しません。私もjsonファイルを生成しようとしましたが、問題は同じです。 –