Ich erstelle eine API, die Zugriffstoken verwendet, damit ich die Nutzung zwischen verschiedenen Abteilungen und für die Zugriffskontrolle verfolgen kann. Mein Plan ist es, die HTTP-Verben angemessen zu verwenden - GET
Informationen abzurufen, POST
hinzuzufügen, zu DELETE
löschen usw.
Meine Frage ist, wie ich mit Zugriffstoken bei den GET-Aufrufen umgehen soll.
Option eins:
Soll das Zugriffstoken als Teil der Abfragezeichenfolge bereitstellen : /api/users/?token=ACCESSTOKEN
. Das Problem dabei ist, dass ACCESSTOKEN in Serverprotokollen angezeigt wird. Diese Methode unterscheidet sich auch von POST- oder DELETE-Anforderungen, bei denen das Token über den Body übergeben wird.
Option zwei:
Geben Sie einen Text für die Anforderung an (wie in einer POST
Anforderung), und einer der Parameter ist das Token. Mein Problem hierbei ist, dass andere Entwickler in meinem Unternehmen mir mitteilen, dass dies keine "echte GET-Anfrage" ist, da ich Daten weitergebe. Die URL, die sie nennen, sieht einfach so aus /api/users/
und wird token=ACCESSTOKEN
im Körper bereitgestellt.
Option drei:
Lass es fallen GET
und zwinge alles dazu, a zu sein POST
. Diese Idee gefällt mir nicht, da ich für viele dieser API-Aufrufe keine neuen Ressourcen erstelle. Ich gebe einfach Daten zurück, die sich zufällig hinter einer API befinden, für die eine Autorisierung erforderlich ist.
Gibt es eine Option, die mir fehlt oder die ich verfeinern sollte? Ich mag Option 2, bin aber sensibel für die Bedenken anderer Abteilungsentwickler.
Authorization
.