Bei begrenztem Client zusätzliche HTTP-Verben verwenden

Es gibt einige Fälle, in denen Apps keine HTTP-Anforderungen mit anderen Verben als GET oder POST vornehmen können. Beispielsweise können einige Proxys, Firewalls usw. von den Betreibern so konfiguriert sein, dass sie bestimmte HTTP-Verben blockieren, oder bestimmte App-Umgebungen unterstützen möglicherweise keine anderen Verben. In diesen Fällen bietet die OneDrive-API eine alternative Möglichkeit zur Angabe eines HTTP-Verbs bei Bedarf.

Sie können eine HTTP-Anforderung über einen POST tunneln, indem Sie eine POST-Anforderung senden und den Header X-HTTP-Method-Override hinzufügen, der auf die aufzurufende Methode festgelegt ist. Dies weist den Server an, die Anforderung nicht als POST zu verarbeiten, sondern als das Verb, das als Wert des Headers angegeben wurde.

Dieser Header ist nur für POST-Anforderungen gültig. Für andere HTTP-Methoden wird er ignoriert.

Beispiel: Wenn das Verb DELETE von einer Firewall blockiert wird, kann Ihre Anwendung das Verb an die API tunneln, um sicherzustellen, dass die App eine Datei trotzdem löschen kann.

POST /drive/items/{item-id} HTTP/1.1
Host: api.onedrive.com
X-HTTP-Method-Override: DELETE

Mit dieser Anforderung wird die identifizierte Ressource gelöscht. Die Antwort des Diensts entspricht der Antwort, die zurückgegeben worden wäre, wenn die HTTP-Methode DELETE enthalten hätte.