Não entendi bem porque tenho que colocar a declaração dessa forma no serviço
Se a url é padrão por que é necessário colocar fotoId por padrão? return $resource('/v1/fotos/:fotoId', null, {
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Não entendi bem porque tenho que colocar a declaração dessa forma no serviço
Se a url é padrão por que é necessário colocar fotoId por padrão? return $resource('/v1/fotos/:fotoId', null, {
Isso faz o recurso receber parâmetro quando passado. Sem ele...Não seria possível realizar req do tipo get para obter um recuso porque ela precisamos passar um Id.
Posso ter mais de um parâmetro? Por exemplo se meu sistema trabalhasse com 0 até 3 parâmetros?
Ele entenderia desde que eles fossem passados na ordem correta?
Rafel,
neste caso você colocaria as mascaras dos três parametros na formação da URL e dentro do objeto JSON você definiria os valores. Ex:
angular.module('meusServicos', ['ngResource'])
.factory('meuRecurso', function($resource){
return $resource('v1/recurso/:param01/:param02/:param03');
});
E para usar:
meuRecurso.get({param01: $routeParams.valor01, param02: $routeParams.valor02, param03: $routeParams.valor03}, function(retorno) {
//Seu tratamento aqui....
}, function(erro){
//Seu tratamento aqui....
});
Até mais e bons estudos