認証手続き後にRESTfulオブジェクトをロードするためのベストプラクティスを知りたいと思います。認証後にRESTfulオブジェクトをロードする
たとえば、ログインした後に人、場所、その他のアカウント関連情報のリストを取得する必要があるアプリがあります。次のうちどれがベストプラクティスですか?
。アプリは、POST/API/V1 /ログインそれは返す必要があります呼び出した後:
{
"token": "xxxxx.yyyyyyy.xzzzzzzzzz",
"persons": [
{"id": 1, "name": "John"},
{"id": 2, "name": "Paul"},
{"id": 3, "name": "George"},
{"id": 3, "name": "Ringo"}
],
"places": [
{"id": 1, "name": "London"},
{"id": 2, "name": "New York"},
],
"lastLogin": "2017-09-10 13:00:00"
}
この方法で、彼らが呼び出しを個別に取得するために行う必要はありませんので、アプリ開発者にそれを容易にするために表示されます。しかし、それは緊密に結合されているようです。
b。それとも、ただ
{
"token": "xxxxx.yyyyyyy.xzzzzzzzzz"
}
を返す必要がありますし、アプリは、たとえば使用して個別に他のデータをロードする必要があり、
GET /api/v1/persons
GET /api/v1/places
GET /api/v1/lastlogin
このメソッドは、クリーナーのようですが、それはアプリ開発者のための難しいかもしれません。特に、たくさんの異なるモデルを読み込んでいる場合は、リクエストのオーバーヘッドが増えます。
。または、トークンを返すだけの/api/v1/loginWithDataという名前のコールと、トークンを返すだけの別のトークン/api/v1/loginを持っていればいいですか?このメソッドは両方の利点がありますが、api名前空間が乱雑になります。
私はそれらから学ぶことができるように説明するリンクを送ることができれば本当に感謝します。
私もあなたに同意する傾向があります。しかし、それは一般的な練習ですか、それとも単純ですか? –
@aljofどの部分? – inf3rno
あなたが言及したところ:「GET/api/v1/user/136を提供するPOST/api/v1/authリンクを使用します。私は私の質問は、私のアプリが使用するデータを含むPOSTの応答を持っていない代わりに、別の要求を使用して、データを取得するアプリを持っている理由ですね? –