Ich möchte einige Ratschläge zum Entwerfen einer REST-API, mit der Clients eine große Anzahl von Objekten effizient zu einer Sammlung hinzufügen / daraus entfernen können.
Über die API müssen Clients in der Lage sein, Elemente zur Sammlung hinzuzufügen und Elemente daraus zu entfernen sowie vorhandene Elemente zu bearbeiten. In vielen Fällen möchte der Client die Sammlung in großen Mengen aktualisieren, z. B. 1000 Elemente hinzufügen und 500 verschiedene Elemente löschen. Es scheint, dass der Client dies in einer einzigen Transaktion mit dem Server tun sollte, anstatt 1000 separate POST-Anforderungen und 500 DELETEs zu benötigen.
Hat jemand Informationen zu den Best Practices oder Konventionen, um dies zu erreichen?
Mein derzeitiger Gedanke ist, dass man in der Lage sein sollte, ein Objekt zu PUTEN, das die Änderung des Sammlungs-URI darstellt, aber dies scheint im Widerspruch zum HTTP 1.1-RFC zu stehen , was darauf hindeutet, dass die in einer PUT-Anforderung gesendeten Daten unabhängig von der interpretiert werden sollten Daten bereits am URI vorhanden. Dies bedeutet, dass der Client auf einmal eine vollständige Beschreibung des neuen Status der Sammlung senden muss, die möglicherweise sehr viel größer als die Änderung oder sogar größer ist, als der Client bei der Anforderung wissen würde.
Natürlich würde ich gerne bei Bedarf vom RFC abweichen, würde dies aber lieber auf herkömmliche Weise tun, wenn eine solche Konvention existiert.