Запрос PUT без идентификатора - PullRequest
1 голос
/ 09 февраля 2020

У меня есть метод API, при котором сервер аутентификации позволяет автоматически c зарегистрироваться, когда пользователь еще не существует при первом входе в систему.

Сервер аутентификации должен выполнить вызов:

PUT https://some-api/api/v1/auth/users 

Обработчик этого метода проверит, существует ли пользователь уже, и создаст его, когда пользователь не использует электронную почту.
Мой вопрос заключается в том, есть ли что-то не так с указанием идентификатора в URL-адресе. Проблема в том, что на самом деле userId еще не существует, когда пользователь не существует.
Я знаю, что обычный формат будет выглядеть следующим образом:

PUT https://some-api/api/v1/auth/users/:userId

Очевидно, что клиент может проверить, существует ли пользователь на основе при предварительном отправлении электронной почты создайте запрос POST для создания пользователя или GET, если пользователь уже существует.
Это вводит больше сетевых запросов, поэтому я бы предпочел этого избежать.

1 Ответ

0 голосов
/ 09 февраля 2020

Я заметил, что есть какое-то общее решение использовать «электронную почту» в качестве идентификатора ресурса.

Это работает для меня. Одно замечание заключается в том, что мне не очень нравится использовать адрес электронной почты в URL, но в моем случае это нормально, так как этот URL будет виден только внутри кластера и не будет открыт для внешней сети.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...