WebAPIでエラーが起きたとき、HTTPステータスコードは何を返すべきか?
2つの考え方がある。
HTTPステータスコードも4xxか5xxを返すべき。
HTTPステータスコードは2xxで返して、レスポンス内容でエラーを提示すべき。
検討材料
4xx, 5xx を返すのであれば、HTTPステータスコードを見ただけでエラートラップができる。
レスポンス内容を見てトラップする場合、そのパースが難しい。
飽くまでそのレイヤーとしてのエラーであるべき。
2xx を返せば HTTP のレイヤーが正しく動いていることがわかる。
逆になんでもかんでも 4xx や 5xx で返してしまうと、どこが悪いのかの切り分けが困難になる。