2013-07-15 5 views
1

Flask 백엔드에서 JSON 응답을 각도 앱으로 보내고 싶지만 오류가있는 위치를 찾을 수 없습니다.Flask 백엔드에서 Angular로 JSON 응답 받기

{ 
    "phones": [ 
    { 
    "age": 0, 
    "name": "Nexus S", 
    "snippet": "Fast just got faster with Nexus S." 
    }, 
    { 
    "age": 1, 
    "name": "Motorola XOOM with Wi-Fi", 
    "snippet": "The Next, Next Generation tablet." 
    }, 
    { 
    "age": 2, 
    "name": "MOTOROLA XOOM", 
    "snippet": "The Next, Next Generation tablet." 
    } 
    ] 
} 

그리고 여기 컨트롤러 : :이 반환 JSON 응답은

$scope.phones = [ 
{"name": "Nexus S", 
"snippet": "Fast just got faster with Nexus S.", 
"age": 0}, 
{"name": "Motorola XOOM with Wi-Fi", 
"snippet": "The Next, Next Generation tablet.", 
"age": 1}, 
{"name": "MOTOROLA XOOM", 
"snippet": "The Next, Next Generation tablet.", 
"age": 2} 
]; 

는 또한 아무튼 :이 같은 컨트롤러에 JSON 개체를 통과 할 때

function Phones($scope, $http){ 
$http.get('127.0.0.1:5000/phones').success(function(data){ 
$scope.phns = data.phones; 
    console.log("I'm called"); 
}); 
} 

이 작동 data.phones과 같은 데이터를 가져 오려고 할 때 작동하지 않습니다. 나는 컨트롤러가 호출되지만 gets 함수는 데이터를 어떻게 든 가져 오지 않을 것이라고 확신한다.

+0

첫 번째 경우에는 배열이있는 객체입니다 ... 작동하는 두 번째 배열은 배열로 정의 된 것을 보여줍니다 ... 왜 차이가 있습니까? 내가 말하고자하는 것은 당신이 데이터를 할당해야하는 성공에 있다고 생각한다. $ scope.phones에 전화. 또한 console.log (데이터)를 통해 현재 무엇을 얻고 있는지 확인할 수 있습니다. – shaunhusain

+0

서버에서 응답을 얻었습니까 –

+0

data.phones도 시도했지만 작동하지 않았습니다. 내 브라우저에서 127.0.0.1:5000/phones을 방문하면 맨 위에 json이 반환됩니다. 나도 플라스크 jsonify를 사용했다. 그래서 나는 헤더가 괜찮을 것이라고 생각한다. 디버깅이 성공 콜백처럼 보일 때 콜백은 호출되지 않지만 이유를 찾을 수 없습니다. – Bora

답변

2

"http"를 127.0.0.1:5000/phones에 추가하면 문제를 해결할 수 있습니다.