私は Laravel を使用して、素晴らしいルーティング機能を持つ API を構築しています。
トークンが表すユーザーを表すことを意味する「私」を渡すことができるように、ユーザー ID を渡すことができる場所ならどこでもサポートしたいと考えています。
例えば
/users/1234 => /users/me
/competitions?user=1234 => /competitions?user=me
/users/1234/threads/comments => /users/me/threads/comments
クエリ文字列については、「me」を内部的に置き換えることを処理しますAuth::user()->id
が、「me」がパスの一部であるルートについては、それらのルートをキャプチャし、「me」をからの出力に置き換えてからAuth::user()->id
3xx リダイレクトを行うことを考えています変更されたルート。
ここで2つの質問です。
1) これは実行可能/良いアイデアですか、それとも特定の /users/currentUserInformation エンドポイントを用意して、クライアントが現在のユーザー ID を取得できるようにする必要がありますか?
2) 要件に適合する 3xx コードはどれですか? 「代わりにここからこの情報を要求する必要があります」ではなく、単に「必要な情報は実際にはここから来ていますが、どちらもこの情報を取得することができます」(別名キャッシュイコール)です。