Je suis certain que cette question va paraître stupide mais disons que j'ai une ressource dans une WebAPI qui est: api/v1/entities/{entityId}
Si maintenant dans une application de type Angular 2+, j'ai besoin de savoir si cette ressource est accessible par l'utilisateur courant (e.g. call dans une Guard conditionnant l’accès pour un certain composant), comment est-ce que je peux faire ?
Note: je parle bien de connaitre l’accès (true / false) sur cette ressource et non de récupérer la ressource pour le moment.
Est-ce qu'il vaudrait mieux faire:
- GET sur la ressource même si on ne se sert pas de la ressource en soi, ce qui gaspille un bon nombre de bytes transférés sans compter qu'il faudra compter sur l'analyse du http status code pour déterminer interpréter si l’accès à la dite ressource est ok
- HEAD sur la ressource, ce qui correspond au cas du dessus mais sans retour de la ressource.
- OPTIONS sur la ressource et interpréter que si GET est parmi les verbes retournés c'est OK.
- Utiliser une autre ressource api/v1/entities/{entityId}/authorized (pas RESTful du tout) ou api/v1/auth/me/entities/{entityId} (pas vraiment mieux)
- Autre solution ?
Je sais qu'il n'y a pas vraiment de standards REST donc les recommandations sont toujours à prendre avec des pincettes mais cette question me hante depuis quelques temps.
Partager