Server-Side Swift Vaporで[ WARNING ] Abort.422: The parameter value could not be converted to the required typeが出た場合

Last Updated on 2023年12月28日 by lemonade

はじめに

[ WARNING ] Abort.422: The parameter value could not be converted to the required type

が出た場合なにがダメだったのかが一瞬わからなかったので備忘録

結論

以下のようなコードでparameters.requireを使って、Intをパスパラメータに入れないといけないのにStringを入れてしまって弾かれた場合のAbortエラーでした。

app.get(":count") { req -> Int in
  let count = try req.parameters.require("count", as: Int.self)
  return count
}

The HyperText Transfer Protocol (HTTP) の 422 Unprocessable Entity 応答状態コードは、サーバーが要求本文のコンテンツ型を理解でき、要求本文の構文が正しいものの、中に含まれている指示が処理できなかったことを表します。

https://developer.mozilla.org/ja/docs/Web/HTTP/Status/422

初めて見た422のHTTPステータスで、記述からなんとなくサーバー側かと思ってちょっと狼狽えてしまいました。

Leave a Comment

CAPTCHA