問題タブ [rails-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1165 参照

ruby-on-rails - Rails_API gem でのセッション

プロジェクトで rails_api gem を使用しています。認証用のセッション管理を追加したいのですが、セッションが機能していないようです。ここに私の設定がありますconfig/initializer/session_store.rb

追加config.api_only = falseしましたapplication.rb( Cookie セッションストアを Rails API アプリに追加する)

そして私session_controllerの中に、トークンを保存するためのセッションを追加しました

の場合、application_controllerアクセスしたいのですsession[:token]が、結果はnil次のとおりです。

0 投票する
1 に答える
2298 参照

ruby-on-rails - ActiveModel::Serializers は、Rails コントローラのように名前空間 (ネスト) を持つことができますか?

質問:

私は自分のコントローラーでこれを行います:

シリアライザーでこれを行うことができないのはなぜですか? (または私はできますか?)

環境:

1 つのモデルに対応する複数のコントローラー/ルートがあります。

また、コントローラーと 1 対 1 で対応するモデルごとに複数のシリアライザーが必要です。

ActiveModel::Serializers次のようにコントローラーからシリアライザーを指定できます。

では、なぜ私もこれを行うことができないのですか?

これらが機能することはわかっていますが、これらのような複合名の醜さを避けようとしています。

  • ProductAlphaLicenseSerializer
  • ProductBravoLicenseSerializer
  • ProductCharlieLicenseSerializer

私のモデルはそれぞれ複数の API をサポートしているため、シリアライザーに名前空間を設定したいと考えています。各モデルは、対応するシリアライザーごとに異なる方法で使用されます。

0 投票する
1 に答える
927 参照

ruby-on-rails - OAuth2 プロバイダーである Mongoid ORM で Rails 4 API を作成するには?

Rails 4 API をOAuth2 Providerにすることで保護しようとしています。

Rails 4 で動作するように、gem Mongoid '4.0.0' (Git Repo の master ブランチから) を追加しました。

ここで、Doorkeeper gem を使用して API を OAuth2 プロバイダーにしたいと考えています。Doorkeeper は Mongoid 4 をサポートしていないと思います (出典: https://github.com/applicake/doorkeeper/issues/224 )

さらに、Mongoid 3.1.2 は Rails 4 では機能しないため、使用できません。

gem 'oauth-plugin' は、インジェクトされるボイラープレート コードが多すぎるため、使用しないほうがよいと思います。

提案してください、それを機能させるために私にできることはありますか?

前もって感謝します!:-)

0 投票する
1 に答える
101 参照

ruby-on-rails-4 - Omniauth - プロバイダを動的に選択

安らかなリソースがあるとしましょう。UserSession

通常使用する OmniAuthUserSessions#createを使用するのではなく、提供されたパラメーターに基づいてプロバイダーを選択したいと思います。/auth/:providerこれを行うことは可能ですか?

0 投票する
4 に答える
18298 参照

ruby-on-rails - Rails: ActionDispatch::Request の未定義のメソッド「flash」

Rails 4 で Ember アプリケーションを作成しようとしてrails-apiいますが、単一ページ アプリの一部ではないいくつかのページに対してアプリケーション コントローラーをそのまま維持しながら、API コントローラーを使用することにしました。より具体的に言えば、私のコントローラーは次のとおりです。

app/controllers/application_controller.rb:

app/controllers/sample_controller.rb:

app/controllers/api/v1/api_controller.rb:

app/controllers/api/v1/sample_controller.rb:

Myapplication.html.slimには次の行が含まれています。

これを含めると、次のエラーが発生します。

#< ActionDispatch::Request:0x007f99f41d8720 > の未定義のメソッド「フラッシュ」

このスレッドに関する議論によると、犯人は である可能性があるようrails-apiですが、私が設定した継承を考えると、完全には確信が持てません。助言がありますか?

0 投票する
4 に答える
16151 参照

ruby-on-rails - Devise user sign_in が CSRF トークン認証トークンの認証エラーを返す

devise(最新バージョン - 3.2.0) とrails(最新バージョン - 4.0.1)を使用しています

私は単純な認証 (ajax または api なし) を行っており、CSRF 認証トークンのエラーが発生しています。以下の POST リクエストを確認してください

ルート URL は を指しhome#new、これは次のようになります。

Sign_in ページで生成された HTML ビューは次のようになります。

  • メタタグ

    /li>
  • /li>

認証リクエストはlast_sign_in_atとの値も更新しますが、コントローラーでsign_in_countアクセスしようとすると.current_usernil

私によると、実際にはサインインしていませんuser。しかし、「なぜテーブル内のlast_sign_in_at/sign_in_count値を更新しているのか?」という疑問が生じます。user