Я считаю, что вы можете перевести методы LOGIN & LOGOUT в базовые операции CRUD CREATE & DELETE. Поскольку вы создаете новый ресурс с именем SESSION и уничтожаете его при выходе из системы:
- POST / login - создает сеанс
- DELETE / logout - уничтожает сессию
Я бы никогда не стал выполнять LOGOUT как GET только потому, что кто-то может совершить атаку, просто отправив электронное письмо с тегом IMG или ссылку на веб-сайт, где существует такой тег IMG. ( <img src="youtsite.com/logout" />
)
PS Долгое время мне было интересно, как бы вы создали RESTful вход / выход, и оказалось, что это действительно просто, вы делаете это так же, как я описал: используйте / session / endpoint с методами CREATE и DELETE, и все в порядке. Вы также можете использовать UPDATE, если хотите так или иначе обновить сеанс ...