問題タブ [net-http]

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 に答える
3192 参照

ruby - ruby を使用して URL のコンテンツの長さを取得する

を使用して Web サイト上のファイルに関する詳細を取得する Ruby スクリプトを作成しようとしていますnet/http。私のコードは次のようになります。

このリクエストから 2 つの情報を取得したいと思います: コンテンツの拡張された全長と、(必要に応じて) 収縮されたコンテンツの長さです。

ヘッダーにはcontent-length、コンテンツの gzip 圧縮された長さのように見えるパラメーターが含まれることがあります。res.body.length を使用して、コンテンツの膨張したサイズを概算することもできますが、これは想像力を駆使しても絶対確実ではありません。のドキュメントにnet/httpは、gzip ヘッダーがリストから自動的に削除されると書かれているため (私を助けるために、よろしくお願いします)、この情報について信頼できるハンドルを取得できないようです。

どんな助けでも大歓迎です(これをより簡単に行うことができる場合は、他のgemを含めて)。

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

ruby - ruby-openid: 検出の実行中に @socket が設定されていません

omn​​iauth/openid でちょっとしたトラブルが発生しています。

認証しようとすると、ログにこれが見つかりました:

undefined method io' for nil:NilClass次のスニペットでは、openid/fetchers.rb に由来する重要な点があります。

そのエラーは によって生成され@socket.io.peer_cert、@socket は定義されていません。

以前にこれに遭遇した人はいますか?何が原因なのかよくわかりません。

私が実行しているバージョン:

  • ruby 1.9.3dev (2010-08-17 トランク 29020) [x86_64-darwin10.4.0]
  • ruby-openid (2.1.8)
  • ruby-openid-apps-discovery (1.2.0)
  • オムニ認証 0.2.0
0 投票する
1 に答える
297 参照

ruby-on-rails - Net :: HTTPメソッドの詳細はどこで確認できますか?

誰かが私にNet::HTTPの良いリソースを教えてもらえますか?特定のコードがそのように機能する理由を理解しようとしています。例えば:

上記のコードの95%は理解していますが、何が行われているのかを説明するリソースが見つかりません.head('/')。誰かが私に初心者に優しい良いリソースを教えてくれることを願っています。

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

ruby-on-rails - Rails で「net/http」を使用すると「Errno::ECONNREFUSED」が表示されるのはなぜですか?

URL から XML ファイルを解析しようとしています。私がこのようなことをしようとすると:

すべてが機能しますが、Rails プロジェクトの外でこれを行う場合のみです。このファイルを Rails 3 プロジェクトに含めてそこで解析しようとすると、エラーが発生します"Errno::ECONNREFUSED in [controller]" - Connection refused - connect(2)

net/http私の問題は次のとおりです。コンポーネントのインストール方法がわかりません。http://www.rubygems.orgで探していますが、見つかりません。

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

ruby - 小さな Ruby スクリプトのデバッグに助けが必要

スクリプトを実行すると、次のエラーが表示されます。

スクリプトは次のとおりです。

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

ruby-on-rails - 「遅い」API での ActiveResource EOFError

私はこれを解決するのに真剣に苦労しています。

私は 2 つの Rails アプリを持っています。それらを Client と Service と呼びましょう。すべて非常にシンプルで通常の REST インターフェイスです。基本的なシナリオは次のとおりです。

  • クライアントがサービスに対して POST /resources.json リクエストを行う
  • サービスは、リソースを作成し、ID をクライアントに返すプロセスを実行します。

繰り返しますが、サービスの処理は非常に時間がかかり、数分かかる場合があるということだけです。その場合、サービスがリクエストを正しく処理し、200/201 で応答している間、リクエストが行われてから正確に 60 秒後にクライアントで EOFError が発生します ( ActiveResource::Base.timeout の設定に関係なく)。これは、ログに表示されるものです(時系列):

明らかに、サービスの応答はクライアントに届きませんでした。エラーをソケット レベルまで追跡し、シナリオをスクリプトで再現しました。そこでは、TCPSocket を開いてデータを取得しようとしました。私は何も要求していないので、何も返されず、要求は 70 秒後にタイムアウトするはずです (下部の完全なスクリプトを参照してください)。

これらは、いくつかのドメインの結果です。

ご覧のとおり、70 秒間「待機」できるサーバーもあれば、接続を終了して EOFErrors を発生させたサーバーもありました。サービスに対してこのテストを行ったところ、(予想通り) 60 秒後に EOFError が発生しました。

なぜこれが起こるのか誰か知っていますか?これらを防止したり、サーバー側のタイムアウトを延長したりする方法はありますか? ソケットが閉じられた後もサービスは「機能」し続けるため、プロキシレベルで終了する必要があると思いますか?

すべてのヒントをいただければ幸いです。

PS: 完全なスクリプト:

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

ruby - Net::HTTP のブロック形式を使用した HTTPS リクエスト -- 可能ですか?

ブロックフォームなしで Net::HTTP https リクエストを行うには、次のようにします:

しかし、ブロック形式を実行するときに Net::HTTP に https を使用するように指示する方法はありますか?

私はルビー1.8.7を使用しています

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

ruby-on-rails - Rails 3 URLのEachValidator

特定の URL の有効性をテストするために使用できる EachValidator を作成したいと考えています。基本的には、URL形式に一致するかどうかを最初にテストしたいと思います。URL のように見える場合は、Net::HTTP を使用して URL の解決を試みます (次のリダイレクトを含む)。誰かがすでにこれと同様のことを行っていて、喜んでコードを共有していますか?