問題タブ [rack]

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

ruby-on-rails - RoR の更新時のコンテンツのリロードはどのように機能しますか?

RoR を使用すると、env が である限り、developmentアプリケーション コードの一部を変更し、ブラウザを更新するだけで、Mongrel を再起動することなくすべてを変更できます。

これはどのように機能し、Rails コードベースのどこで行われているのでしょうか?

(あるいは、Rack+Mongrel でこれを行う簡単な方法はありますか?)

本当にありがとう。

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

ruby - ラック経由でバイナリ ファイルを提供するにはどうすればよいですか?

私はここで少しばかげていると思いますが、env ハッシュから SERVER_NAME キーが欠落しているというエラーが発生し続けており、Rack::SendFile に関する実質的なドキュメントが見つかりません..

では、どうすればファイルを提供できますか?

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

ruby - nginx + 乗客がラックアップ ファイルを使用していない

Passenger が次の nginx サーバーの config.ru ファイルを検出しないという問題があります。

Nginxはそれを無視して、通常のWebページとして扱っているようです(パブリックでindex.htmlを検索しようとすると禁止領域が表示されるため)。Rackup コマンドを実行して config.ru を実行すると、正常に起動することを確認しました。

これとよく似た別のサーバー ディレクティブがあります。これは Rails を使用しており、完全に機能しているようです。

何か不足していますか?

前もって感謝します!

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

ruby-on-rails - Rack から Rails 3 セッションにアクセスしますか?

Rails 2.3.5 では、Rails アプリ内からセッションに設定した属性にアクセスするために、次のことができました。現在、Rails 3 ではenv["rack.session"]nil. Rails 3 で同じことを行うにはどうすればよいですか?

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

testing - Sinatra では、テスト フィクスチャを使用している人はいますか? テストスイートはどのように設定されていますか?

私は Ruby/Rails の世界から来ました。Sinatra プロジェクト (Rack::Test を使用) でテストをセットアップしています。私は通常、テストで Fixtures を使用します。シナトラに相当するものはありますか?

人々は Sinatra テスト スイートをどのようにセットアップしますか (Sinatra テストで見つけることができる唯一の例である基本的な helloworld の例の外で)。

ありがとう!

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

ruby - Rspecを使用して、Sinatraでヘルパーブロックをテストするにはどうすればよいですか?

私はsinatraアプリを作成し、rspecとrack / testでテストしています(sinatrarb.comで説明されています)。
ドメインオブジェクトからsinatraヘルパーにかなり手続き型のコードを移動するまでは、これまでのところすばらしいことです。

それ以来、私はこれらを個別にテストする方法を見つけようとしてきましたか?

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

sinatra - Rack::Sinatra のラックアップの ResponseHeaders

これは非常に簡単だと思いますが、正しく理解できないようです。基本的に、Rack ミドルウェアを使用して、Sinatra アプリが提供するすべての応答にデフォルトの Cache-Control ヘッダーを設定しようとしています。Rack::ResponseHeaders は必要なことを正確に実行できるように見えますが、ラックアップ ファイルでここに示されている構文を使用しようとするとエラーが発生します。

次のように、Rack::Cache を正常に動作させることができました。

ただし、Rack::ResponseHeaders ではヘッダーをきめ細かく制御できますが、これでは希望どおりの出力が得られません。

参考までに、私のサイトは Heroku でホストされており、必要な Rack gem は .gems マニフェストで指定されています。

ありがとう!

更新:いくつかの調査を行った結果、最初の問題は、インストールされた Rack-contrib (0.9.2) のバージョンで Rack::ResponseHeaders が見つからないことのようです。それを調べることから始めます。

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

ruby - パッセンジャーを使用してsinatraアプリを展開すると、404のみが返され、ページは見つかりません。それでもシンプルなラックアプリは機能します

Apache 2にパッセンジャーを正しくインストールしました(またはおそらくインストールしていません)。ラックは機能しますが、sinatraは404を出し続けます。

これが機能するものです: config.ru

ここでも機能します: app.rb (以下を参照) をruby​​ app.rbで実行し、localhost:4567/about および / を調べます。

アプリを再起動すると、正しい Hello World が表示されます。w00t。

しかし、その後、建物に入るシナトラがあります: config.ru

app.rb

これにより、404 が返され続けます。 /var/logs/apache2/error.logには、これらが「404」として正しく表示され、気になることがあります。

気になったのは、/ と /about の後のスペースです。apache や sinatra は /%20 のように /[スペース] を探しに行きますか?

この問題が何に関連しているかを誰かが知っている場合、おそらく既知のバグ (私が見つけられなかった) または既知の落とし穴ですか? 多分私はただ愚かで、「それはすべて間違っていますか?」

それ以外の場合は、実行中のラック、sinatra、またはパッセンジャー アプリでより多くの開発者データを取得、読み取り、またはログに記録する場所に関するヒントも役立ちます。たとえば、sinatra が探しているものを確認するためです。

その他の情報: 実行中の ubuntu 9.04、apache2-mm-prefork (deb)、mod_php5、ruby 1.8.7、パッセンジャー 2.2.11、sinatra 1.0

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

redirect - Sinatra がリダイレクトでヘッダーを渡さない

エンドポイントが呼び出されると、同じ Sinatra プロキシ上の別のエンドポイントにリダイレクトするシンプルな Sinatra プロキシがあります。

ヘッダーを使用してリクエストを行うと、リクエストが最初のエンドポイントでリダイレクトされるときに、プロキシがこのヘッダーを 2 番目のエンドポイントに渡さないようです。これは私のコードです:

どんなヒントでも大歓迎です。

ありがとう

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

ruby - クッキーの設定

さて、Ruby を使用して Cookie を設定しようとしています。私はラック環境にいます。response[name]=valueハッシュ ラックが持つ HTTP ヘッダーに HTTP ヘッダーを追加します。私はそれが機能することを知っています。

ただし、Cookie を設定する次の方法は機能しません。

なぜだめですか?どうすれば解決できますか?ありがとう。