index @ AuthorsController

一覧形式

url

リクエスト

認証読者*
権限
methodget
urlパラメータ{page,page_size}
POSTデータjson形式*
html
json
jsonp×

*オープンモードのとき、誰でも可 →RunMode

解説

新規作家を一覧形式で表示する。

  • セッションまたは認証トークンからユーザアカウントを特定する。
  • 作家モデルにページ位置補正を依頼して開始ページを取得する。
    • urlパラメータpageを渡す。
  • 作家モデルにページ数補正を依頼して1ページの件数を取得する。
    • urlパラメータpage_sizeを渡す。
  • 作家モデルに一覧取得を問い合わせ、その結果を作家リストとして取得する。
    • ページ位置と件数を渡す。
  • 取得したデータを返す。

urlパラメータ

page

  • 表示するデータが何ページ目からのものか。

page_size

  • 1ページに収まる行の数。

POSTデータ

auth_token

  • 外部からjsonで要求する場合、認証処置として認証トークンが必要。

戻り値

正常系

  • htmlのとき、ステータスコード200 OKとともに、テンプレートから起こしたページを返す。
  • jsonのとき、ステータスコード200 OKとともに、json構造のデータを返す。
    • 出力フォーマットは作家モデルのjson一覧出力オプションに従う

参考:AuthorsIndexView

例外系

  • ユーザまたは管理者アカウントでサインインしてなかった。(Devise)
    • htmlなら、ステータスコード302 Foundを返すとともに、サインインを促すページ(/users/sign_in)へ遷移する。
    • jsonなら、ステータスコード401 Unauthorizedを返すとともに、応答メッセージにUnauthorizedを返す。
    • ただし、オープンモードで起動しているなら、サインインの必要はない。