2012-02-23 20 views
2

私はEM-httpで働いている経由でプロキシの背後で接続することはできませんが、私は、プロキシの背後にHTTPS(SSL)接続を取得することはできません。ここに私のコードです。EventMachine HTTP要求がHTTPS

require 'eventmachine' 
require 'em-http' 

url = "https://twitter.com/" 
opts = { 
    :proxy => { :host => 'my.proxy', :port => 8080 } 
} 

EventMachine.run do 
    http = EventMachine::HttpRequest.new(url, opts).get 
    http.callback { 
    puts http.response 
    EventMachine.stop 
    } 
end 

このコードは、エラーなしで動作しますが、それは何もしませんし、eventmachineメインループから終了していません。私は以下のような条件の下でそれをしようとすると

、私のアプリは、ターゲットに接続することができます。 HTTP

私はまた、プロキシの背後にカールを使用して応答を取得することができます経由でHTTPSプロキシの背後にある

  • 経由

    • 外プロキシ/ /。

      curl "https://twitter.com/" 
      

      私のコードに問題がありますか?

  • +0

    少なくともアプリがないように、あなたは、get要求にタイムアウトを追加することを検討可能性があり永遠にハングアップします。 (URLは、付き合え)HTTP = EventMachine :: HttpRequest.newを読むためにあなたの行を変更しに.get:タイムアウト=> 15 –

    答えて

    0

    errbackを指定します。あなたのコードは、イベントループを終了しても何の問題もプロキシ要求を持つことが可能に印刷されます:私は、今日と同じ問題を抱えていた私は、私のHTTPプロキシで動作するようにプロキシされたSSL要求を取得することができませんでしたが、

    http.errback { 
        p http.response_header.status 
        p http.response_header 
        p http.response 
    
        EventMachine.stop 
    } 
    
    関連する問題