Eu sou muito novo no angularJS. Procuro acessar serviços da API RESTful, mas não tenho ideia. Como eu posso fazer isso?
fonte
Eu sou muito novo no angularJS. Procuro acessar serviços da API RESTful, mas não tenho ideia. Como eu posso fazer isso?
O AngularJS oferece o $http
serviço que faz exatamente o que você deseja: Enviar requisições AJAX para serviços web e receber dados deles, usando JSON (que é perfeito para falar com serviços REST).
Para dar um exemplo (retirado da documentação AngularJS e ligeiramente adaptado):
$http({ method: 'GET', url: '/foo' }).
success(function (data, status, headers, config) {
// ...
}).
error(function (data, status, headers, config) {
// ...
});
Observe que também há outro serviço no AngularJS, o $resource
serviço que fornece acesso aos serviços REST de uma forma mais de alto nível (exemplo novamente retirado da documentação do AngularJS):
var Users = $resource('/user/:userId', { userId: '@id' });
var user = Users.get({ userId: 123 }, function () {
user.abc = true;
user.$save();
});
Além disso, também existem soluções de terceiros, como Restangular . Veja sua documentação sobre como usá-lo. Basicamente, é muito mais declarativo e abstrai mais detalhes de você.
O serviço $ http pode ser usado para AJAX de propósito geral. Se você tiver uma API RESTful adequada, deve dar uma olhada em ngResource .
Você também pode dar uma olhada no Restangular , que é uma biblioteca de terceiros para lidar com APIs REST facilmente.
fonte
Bem-vindo ao maravilhoso mundo do Angular !!
Existem dois (muito grandes) obstáculos para escrever seus primeiros scripts Angular, se você estiver usando os serviços 'GET'.
Primeiro, seus serviços devem implementar a propriedade "Access-Control-Allow-Origin", caso contrário, os serviços funcionarão muito bem quando chamados de, digamos, um navegador da web, mas falharão terrivelmente quando chamados do Angular.
Portanto, você precisará adicionar algumas linhas ao seu arquivo web.config :
Em seguida, você precisa adicionar um pouco de código ao seu arquivo HTML para forçar o Angular a chamar os serviços da web 'GET':
Depois de fazer essas correções, chamar uma API RESTful é realmente simples.
Você pode encontrar um passo a passo realmente claro dessas etapas nesta página da web:
Usando Angular, com dados JSON
Boa sorte !
Mike
fonte
Access-Control-Allow-Origin
nunca deve ser um curinga, a menos que você seja uma API voltada para o público ...Apenas para expandir
$http
(métodos de atalho) aqui: http://docs.angularjs.org/api/ng.$http// Snippet da página
// métodos de atalho disponíveis
fonte
Por exemplo, seu json se parece com isto: {"id": 1, "content": "Hello, World!"}
Você pode acessar este através do angularjs assim:
Então, em seu html, você faria assim:
Isso chama o CDN para angularjs, caso você não queira baixá-los.
Espero que isto ajude.
fonte