Os aplicativos reais precisam interagir com servidores reais, aplicativos móveis e aplicativos emergentes do Chrome Desktop podem ser uma exceção, mas para todos os outros aplicativos, se você deseja persistir dados na nuvem ou interagir com outros usuários em tempo real, você precisa interagir com o servidor.
Para conseguir isso, o Angular fornece um serviço chamado $ http. Ele fornece uma lista extensível de métodos abstratos para facilitar a interação com o servidor. Ele suporta métodos HTTP, JSONP e CORS. Ele também inclui suporte de segurança para evitar vulnerabilidades no formato JSON e XSRF. Ele permite que você converta facilmente dados de solicitação e resposta e até implementa o cache simples.
Por exemplo, pretendemos que os sites de compras obtenham informações do produto de servidores em vez de dados falsificados da memória. Como escrever o código do servidor está além do escopo deste livro, então vamos imaginar que, por exemplo, criamos um servidor que retorna uma lista de produtos no formato JSON ao consultar o caminho /Produtos.
O exemplo de resposta retornado é o seguinte:
[ { "id": 0, "title": "Paint pots", "description": "Pots full of paint", "price": 3.95 }, { "id": 1, "title": "Polka dots", "description": "Dots with that polka groove", "price": 12.95 }, { "id": 2, "title": "Pebbles", "description": "Just little rocks, really", "Preço": 6,95} ... etc ...]Podemos escrever código de consulta como este:
função shoppingcontroller ($ scope, $ http) {$ http.get ('/produtos'). Sucesso (função (dados, status, cabeçalhos, config) {$ scope.items = dados;});}Em seguida, use -o assim no modelo:
<corpo ng-controller = "ShoppingController"> <H1> shop! </h1> <table> <tr ng-repeat = "Item em itens"> <td> {{item.title}} </td> <td> {{itenscrição. Moeda}} </td> </tr> </tabela> </div> </body>Como dissemos antes, a longo prazo, é benéfico para que o proxy de serviço interaja com o servidor, e esse serviço pode ser compartilhado por vários controladores.