wie zu beheben optionale url-Pfad mit ng-resource
Gibt es restful APIs, zum Beispiel:
/players
- um die Liste für alle Spieler/players{/playerName}
- Informationen für bestimmte Spieler
und ich habe bereits eine Funktion mit ng-Ressource wie:
function Play() {
return $resource('/players');
}
Kann ich wiederverwenden, diese Funktion für bestimmte player, wie beispielsweise:
function Play(name) {
return $resource('/players/:name', {
name: name
});
}
so, ich möchte...
- Anfrage senden für
/players
wenn ich nicht bestandenname
parameter. - Anfrage senden für
/players/someone
wenn ich anname
parameter mitsomeone
Sonst habe ich zu schreiben, eine andere Funktion für bestimmte spielen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit ngResource es ist sehr, sehr einfach (es ist im Grunde ein zwei-liner). Müssen Sie nicht sogar brauchen, zu erstellen Sie benutzerdefinierte Aktionen hier*.
Ich habe eine funktionierende Plunkr hier (nur die Chrome Developer tools und gehen Sie zu der Netzwerk Registerkarte, um die Ergebnisse zu sehen).
Service Körper:
Controller:
Dies ist, wie ich es Tat. Auf diese Weise müssen Sie nicht haben, schreiben Sie eine benutzerdefinierte Ressource-Funktion für alle Ihre endpoints, Sie einfach fügen Sie es Ihrer Liste von Ressourcen Liste. Ich definierte eine Liste der Endpunkte, die ich wollte zu verwenden wie diese.
Erstellt, die Ressourcen der einzelnen wie diese.
}
Die nette Sache über dieses ist, dass es dauert 2 Sekunden hinzufügen, um einen neuen Endpunkt, und ich selbst warf in einer put-Methode für Sie. Dann können Sie Spritzen alle Ihre Ressourcen in Ihre Steuerungen, wie diese.