0

私は Rails API サービスを構築しており、ユーザー認証のために rails-api gem と devise gem から始めました。また、独自のバージョニングも展開しました。バージョニング API の優れた RailsCast だけが必要でした。

今ここに私が直面している問題のいくつかがあります

  • まず、rails-api gem は必要のないすべてのモジュールを削除しますが、返されるエラーが API 形式であると予想していましたが、代わりにメインの例外がログに記録されました。ルーティングまたはその他の理由で失敗し、エラー スタック全体がいくつかの JavaScript を含む html css の形式で返されます。API コンシューマーに返したいものではないと確信しています。

私の質問は、Rails-api ですべてのエラーを適切に処理し、長いエラー スタックを返さないようにするにはどうすればよいかということです。

  • 第二に、ルートで指定した名前空間の下にすべての新しいコントローラーを自動的に作成するようにレールジェネレーターを取得するにはどうすればよいですか (これは非現実的だと思いますが、ちょっと聞いています:P)

  • また、Rails API サービスを成功させるために使用できるその他の必要なリソースを教えてください。

ありがとうございました

4

2 に答える 2

1

私は API にActiveModel::Serializersを使用しています。

コントローラーのアクション内でエラーをレンダリングするだけです。


# almost pseudocode
unless request_successful?
  render json: { errors: { model: [ t(:your_request_made_no_sense, scope: :model)] } }, status: :bad_request
end

API を実行する非常に洗練された方法に興味がある場合は、この 2beards の記事を参照してください。優れたリソースへのリンクが多数含まれている優れたイントロです。

于 2013-08-01T15:19:49.617 に答える