Я использую Laravel для создания моего API, который обладает потрясающими способностями маршрутизации.Are/me и перенаправляет хорошую идею в API?
Я хочу поддерживать везде, где может быть передан идентификатор пользователя, позволяющий передавать «я», что означает представлять пользователя, представляющий токен.
E.g.
/users/1234 => /users/me
/competitions?user=1234 => /competitions?user=me
/users/1234/threads/comments => /users/me/threads/comments
Для строки запроса я обработает, что внутренне заменив «меня» с Auth::user()->id
, но для маршрутов, где «я» является частью пути я имею в виду захватить эти маршруты, заменив «меня» с выходом от Auth::user()->id
, а затем сделать перенаправление 3xx на измененный маршрут.
Так что два вопроса здесь.
1) Является ли это приемлемой/хорошей идеей или я должен иметь конкретную конечную точку/users/currentUserInformation, чтобы клиент мог захватить текущий идентификатор пользователей, а затем они отвечают за построение URL-адресов с идентификатором, возвращаемым с этого ответа в?
2) Какой код 3xx соответствует требованиям? Это не «Вы должны запросить эту информацию здесь вместо этого», это просто «Информация, которую вы хотите, на самом деле пришла отсюда, но также жизнеспособна для получения этой информации» (эквивалент кеша).