Eine Möglichkeit ist, nur eine cache
Ressource haben:
/api/v1/cache
die einige Cache-Zustand zum Beispiel application/vnd.company.cachestate+json
zurückkehren würde:
{
"state": "active",
"objectCount": 123
}
Dann könnten Sie PUT
die gleiche Darstellung:
{
"state": "flushed"
}
Welche zurückkehren kann:
{
"state": "active",
"objectCount": 0
}
Der Punkt ist, müssen Sie zunächst das Problem in der bestehenden Terminologie formulieren. Die verwendeten Begriffe sind immer:
- Ressource (was Sie ‚Route‘ nennen): Ein Unternehmen, das einig Business-Semantik
- Darstellung hat: Das tatsächliche Nachrichtenformat von einer Ressource verwendet. Eine Ressource unterstützt möglicherweise mehrere Darstellungen!
- Mime-Type: Die formale Beschreibung einer Darstellung (oder mehrfachen)
Also, noch einmal, ist es in der Regel keine Ressource, dass „bedeutet“ etwas, eher wie, Ressourcen einige Geschäftsentitätskomponenten darstellen, und die Standardoperationen (GET, PUT, POST, DELETE usw.) sind , die für einige Operationen auf dieser Entität zugeordnet sind.
Das Leeren des Cache ist nicht äquivalent zu DELETE/api/v1/cache? –
@ CássioMazzochiMolin Ich nahm an, Sie müssten in der Lage sein, andere http-Methoden zu tun, damit es eine Ressource ist. Ich gehe davon aus, dass Sie nicht alle Methoden verwenden müssen, um eine richtige Ressource zu sein? – myol
Semantisch bedeutet "DELETE/api/v1/cache", dass Sie den Cache tatsächlich * löschen *, da er nicht mehr da ist, ausgeschaltet oder komplett entfernt wurde. Flushing ist ein anderer Fall. –