실제 응용 프로그램은 실제 서버, 모바일 애플리케이션 및 신흥 Chrome 데스크톱 응용 프로그램과 상호 작용해야하지만 예외 일 수 있지만 클라우드에 데이터를 지속하거나 다른 사용자와 실시간으로 상호 작용하든 다른 모든 응용 프로그램의 경우 서버와 상호 작용해야합니다.
이를 달성하기 위해 Angular는 $ http라는 서비스를 제공합니다. 서버와 쉽게 상호 작용할 수있는 추상 방법의 확장 가능한 목록을 제공합니다. HTTP, JSONP 및 CORS 방법을 지원합니다. 또한 JSON 형식 및 XSRF의 취약성을 피하기위한 보안 지원이 포함되어 있습니다. 요청 및 응답 데이터를 쉽게 변환 할 수 있으며 간단한 캐싱도 구현할 수 있습니다.
예를 들어, 우리는 쇼핑 사이트가 메모리에서 위조 된 데이터 대신 서버에서 제품 정보를 얻도록하려고합니다. 서버 코드를 작성하는 방법은이 책의 범위를 벗어납니다. 예를 들어, /제품 경로를 쿼리 할 때 JSON 형식의 제품 목록을 반환하는 서버를 작성했다고 상상해 봅시다.
반환 된 응답 예제는 다음과 같습니다.
[{ "id": 0, "title": "페인트 냄비", "설명": "페인트로 가득 찬 냄비", "가격": 3.95}, { "id": "title": "폴카 도트", "설명": "폴카 그루브가있는 점", "가격": 12.95}, {id ":" "," "," "," "," "," "가격": 6.95} ... 등 ...]다음과 같은 쿼리 코드를 쓸 수 있습니다.
함수 ShoppingController ($ scope, $ http) {$ http.get ( '/products'). 성공 (함수 (데이터, 상태, 헤더, 구성) {$ scope.items = data;});}그런 다음 템플릿에서 이렇게 사용하십시오.
<Body NG-Controller = "ShoppingController"> <h1> Shop! </h1> <table> <tr ng-repeat = "항목의 항목"> <td> {item.title}} </td> {item.description}} </td> {item.price | Currency}} </td> </tr> </table> </div> </body>앞에서 말했듯이 장기적으로 서비스 프록시가 서버와 상호 작용하도록하는 것이 유리 하며이 서비스는 여러 컨트롤러에서 공유 할 수 있습니다.