2017-02-05 1 views
0

ich eine API erstellen, habe ich einen Benutzer, dass ich durch den Aufruf anfordern können:Wie spezifisch muss ein API-Routing sein?

/api/request/user/{id}

Dies funktioniert gut.

Sagen jeder Benutzer eine Reihe von Fähigkeiten hatte, konnte eine Fertigkeit oder 100.

ich alle Fähigkeiten für einen bestimmten Benutzer erhalten möchten sein.

Würde ich super spezifisch sein und machen es so, dass Sie rufen werden:

/api/request/user/{id}/skills

Oder tut dies:

/api/request/skills/{id} (wo {id} ist die Benutzer-id)

genügt?

Gibt es einen REST-API-Standard, dem ich folgen sollte, oder ist er flexibel?

Jeder Rat wird sehr geschätzt, danke.

Antwort

1

Da skills die Eigenschaft des Benutzers ist, betrachten wir sie als Unterressource. Das Abrufen von Unterressourcen basiert auf der Schachtelungs-URL (hierarchical way), also wäre /api/request/user/{id}/skills großartig!

In /api/request/skills/{id} Fall id sollte eine Kennung der Fähigkeit sein, um Ihre API intuitiv zu machen.

Denken Sie auch an die Benennung convention. Seien Sie konsistent, Ihre skills Ressource ist Plural, also benennen wir user zu users um.

Also, um es zusammenzufassen

/api/request/users/{user_id}

/api/request/users/{user_id}/skills

/api/request/skills/{skill_id}

wäre schön hoch.

Verwandte Themen