2016-08-10 9 views
0

次のPHPコードのための簡単な休憩サービスリクエストを作成します。何らかの理由で要求がエラーをスローします。Angular JSのPHPリクエストからデータを取得する方法は?

Live code

<?php 
    /* Simple array */ 
    $json = array("status" => 0, "msg" => "Request method accepted"); 

    /* Output header */ 
    header('Content-type: application/json'); 
    echo json_encode($json); 
?> 

角度PHP

var app = angular.module('app',[]); 

app.controller('Main', function($scope,$http,$log){ 
    $http.get({ 
    method : "GET", 
    url : "http://my-host-example/webservice.php", 
    headers: {'Content-Type':'application/json'} 
    }).then(function(response){ 
    $log.debug('success',response); 
    },function(response){ 
    $log.debug('error',response); 
    }); 
}); 
+0

どのようなエラーが発生しますか? – Jigar

+0

私はあなたが応答のヘッダーを設定する必要はないと思うちょうど "echo json_encode($ json); exit();"良いでしょう。 – Kashyap

+0

@ Jigarライブコードをjsfiddleに配置しました。エラー機能404に入りました。 – que1326

答えて

2

この方法を試しましたか?

$http.get("http://webenergized.com/webservice.php").then(function(response){ 
     $log.debug('success',response); 
     }, function(response){ 
     $log.debug('error',response); 
     }); 
    }); 

とあなたのphp

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

はい、jsfiddleで何らかの理由でエラー404が見つかりませんでしたが、w3schoolsエディタ)それは働く.... – que1326

+0

それは確かにPHPのURLはhttps:// fiddle(https://jsfiddle.net/0d1arfnb/)のようにする必要がありますので、 – DMCISSOKHO

0

エラーステータス404は、指定されたURLにファイルが見つかりません。このようなパスまたはコールAJAX機能を確認してくださいを参照私のためにうまく動作します。

   $http({ 
        url:'ajaxurl', 
        data:{ 
         "key":'value', 
         "key":'value' 
        }, 
        method:'get' 
       }). 
       success(function(data){ 
        'your code here' 

       }). 
       error(function(data){ 
       }) 
+0

あなたのコードと私の間に違いはありません:) – que1326

+0

NP bro私はヘッダーの設定を使用しませんでした – Joyson

1

404に追加しますか?

  • hosts ok?

  • ファイルを読み取る権限はありますか?

  • ファイルに実行権限がありますか?

  • オーナーはwww:wwwですか?

PHP

<?php 

die(json_encode(['test' => 'test'])); 

角度

$http.get(url); //return promise for service 

クロスドメイン?

header('Access-Control-Allow-Origin: *'); 
関連する問題