問題タブ [rack-middleware]

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 投票する
5 に答える
4703 参照

ruby-on-rails - Ruby on Rails のコンテキストで参照される場合のミドルウェアとは?

Ruby on Rails の文脈で「ミドルウェア」という言葉をよく耳にします。正確には何ですか?具体例を挙げていただけますか?

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

ruby-on-rails - Rails2.3.8でのPDFKitミドルウェアの問題

Ubuntu8.04サーバーにPDFKitとwkhtmltopdfをインストールしました。Rails 2.3.8アプリでミドルウェアとしてPDFKitを使用しようとしていますが、environment.rbに次の行を追加しました(jdpace pdfkitページの指示に従って)。

'pdfkit'が必要config.middleware.usePDFKit:: Middleware

Mongrelが起動しているようですが、ページをリクエストするとすぐに、Mongrelログに次のエラーが表示されます。

**PIDファイルをtmp/pids / mongrel.9270.pid /!\ FAILSAFE /!\ Tue Sep 07 16:42:20 +0000 2010ステータスに書き込んでいます:500内部サーバーエラー未定義のメソッドmatch' for nil:NilClass /usr/lib/ruby/gems/1.8/gems/pdfkit-0.4.6/lib/pdfkit/middleware.rb:12:in呼び出し'/ home / rails / livetest- carbon-hub / releases / 20100907133547 / vendor / rails / actionpack / lib / action_controller / string_coercion.rb:25:in call' /usr/lib/ruby/gems/1.8/gems/rack-1.1.0/lib/rack/head.rb:9:incall' /usr/lib/ruby/gems/1.8/gems/rack-1.1.0/lib/rack/ methodoverride.rb:24:in `call '

他の誰かがこれに出くわしたことがありますか?

どんな助けや提案もありがたく受けました!

0 投票する
2 に答える
5635 参照

ruby-on-rails-3 - レール付きHelloWorldラックミドルウェア3:すべてのリクエストの本文を処理する方法

シンプルなラックミドルウェア「helloworld」を試してみたいのですが、行き詰まってしまいそうです。一部の例では次のコードを使用しているため、メインの構文が変更されたように見えます。

エラーが発生します:

他のコードを見ても、Rails3.0.3で実行できるようには見えません。

ここに私の具体的な質問があります:

  • Railsアプリからの出力の本体を実行および変更するための単純なラックミドルウェアを取得するにはどうすればよいですか?
  • Rails.application.config.middleware.use宣言はどこに置くべきですか?(私はそのためにconfig / initializersに独自のイニシャライザーを作成しました)

よろしくお願いします!

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

ruby-on-rails-3 - ExceptionNotifier 変数にアクセスする方法

カスタム メーラー クラスのsender_addressやなどの ExceptionNotifier 変数にアクセスするにはどうすればよいですか? exception_recipientsExceptionNotifier は Rack ミドルウェアとして実装されているため、どうすればよいかわかりません。

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

ruby-on-rails - Rails アプリケーション用の Rack ミドルウェアを作成する際のストレージ オプションは何ですか?

Rack ミドルウェアが Rails アプリケーション専用に設計されていると仮定すると、どのようなストレージ オプションがありますか? たとえば、Rails キャッシュから読み書きする方法はありますか?

0 投票する
0 に答える
235 参照

ruby-on-rails - すべてではなく一部のアクションで Rails ミドルウェアを無効にする

ActionDispatch::ParamsParser は、特に大きな JSON リクエスト本文がある場合、一部のリクエストで非常に遅いようです。これらのリクエストに対して無効にしたいのですが、ほとんどのアプリケーションではうまく機能します。ミドルウェア スタックから完全に削除せずに、一部のアクションで ParamsParser を無効にする便利な方法はありますか? これは Rails 3.0.9 を使用しています。

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

ruby-on-rails - Sinatra ラック ミドルウェアが「/」ルート URL を乗っ取る

Rails アプリで Sinatra アプリをミドルウェアとして使用しようとしています。

/libRailsアプリのフォルダーで基本的なSinatraアプリをテストしuse、ミドルウェアをdし、ルートを設定しました。それはうまくいきました。

私ができるようにしたいのは、Sinatra アプリを抽出し、gem として含めることです。そうすれば、Sinatra アプリを個別に実行したり、複数の Rails アプリで使用したりできます。

シナトラアプリ

Myrackappまた、gemspec興味深いものは何もありませんが、必要に応じて投稿できます。

Railsアプリ

-

-

ここに私のrake middleware出力があります:

に行くと、のルートパスhttp://myapp.dev/rackappを取得します-正しい動作Myrackapp

に行くと、のパスhttp://myapp.dev/rackapp/rackrouteを取得します-再び、正しい動作Myrackapp/rackroute

問題

http://myapp.devブラウザでに移動すると、Myrackappのルート パスに移動します。

Sinatra アプリを Rails アプリに直接含めるとhttp://myapp.dev、正しいpages#showアクションが表示されました。

Sinatra アプリが Rails のルート パスをハイジャックしないようにするにはどうすればよいですか?

0 投票する
0 に答える
89 参照

ruby - ミドルウェアが原因のエラーをルーティングしますか?

アパートメント gemを使用するアプリがあります。(アパートメント) ミドルウェアが原因で発生したエラーを特定のページにルーティングしようとしていますが、これを解決する方法がわかりません。コントローラーに入れてみましたが、ミドルウェアレイヤーでエラーがスローされるため、役に立ちませんでした。アパートメント ミドルウェアはルートの直前に実行されるため、ルートに配置しても役に立ちませんでした。

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

ruby-on-rails-3 - ラックミドルウェアファイルをRails3のどこに配置しますか?

Railsアプリでこのラックミドルウェアを使用したいのですが、別のSO投稿ですべての解決策を実行しましたが、それでも運がなく、初期化されていない一定のエラーが発生し続けます。

では、ラックミドルウェアファイルを配置し、 Rails3.2.3にconfig.middleware.useを含める正確な場所はどこですか?ありがとう。

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

ruby-on-rails - HerokuでRails3.2.3を使用してラックを書き換えます

Heroku杉スタックでRails3.2.3のラックリライトを設定しようとしていますが、どこを見ても次のようなものを追加するように指示されています。

しかし、これをHerokuで実行しようとすると、エラーが発生します。

実際、「heroku rakeミドルウェア」を実行しても、開発中はRack::Lockがリストに表示されません。Rack::Lockがあります。

最初の質問は、Rack :: LockがHerokuに存在しない理由ですが、それは正しいですか?2番目の質問、Rack :: Lockの前でない場合、Rack :: Rewriteをどこに挿入する必要がありますか?

ありがとう!