2008-12-31 33 views
1

在鞋子應用程序中,我試圖從一些內部網站下載東西。我得到這個錯誤使用鞋子並通過https下載給出了ssl錯誤

Error in /tmp/selfgz14214/ruby/lib/net/protocol.rb line 66 
undefined method 'closed?' for #<OpenSSL::SSL::SSLSocket:0xb6af94f0> 

我得到了上述錯誤代碼。如果使用Shoes,則會出現上述錯誤。

require 'net/http' 
require 'net/https' 
require 'rexml/document' 

class Blogs 
    attr_reader :Connection 

    def initialize 
    @Connection = Net::HTTP::new("someInternalWebSite", 443) 
    @Connection.use_ssl = true 
    end 

    def get_blogs 
    doc = REXML::Document.new @Connection.get('/weblogs/feed/entries/atom').body 
    blogs = Array.new 
    # ----- some crap to parse the blogs 
    return blogs 
    end 

end 

注意這個問題只發生在從鞋子內部運行時。

同樣使用內置的下載方法,它不會返回,甚至不會引發事件。以下是我還沒有工作(或實際上聽到的)鞋子對於

download "https://internalWebsite/weblogs/feed/entries/atom", 
:start => lambda { 
    alert "hello" 
}, 
:progress => lambda { 
    alert "progress" 
}, 
:finish => lambda { 
    alert "finish" 
} 

回答

0

Shoes在當前版本中不支持HTTPS。

0

的代碼,但是當我曾與Ruby的東西訪問HTTPS上的問題,它往往是沒有的情況下,證書設置正確。

我這方面的經驗是幾年以前的事了,但它可能是值得做了一些實驗只是爲了檢查,你實際上可以使與該代碼常規SSL連接。我希望你至少需要告訴它在哪裏可以找到客戶端證書,或者根本不需要客戶端證書。

我還記得我需要使用http-access2而不是普通的http庫。

正如我說的,我敢肯定的東西已經轉移,因爲我試圖做到這一點,但大多數的問題,我發現與SSL連接進行認證有關。

+0

對於證書,我收到一條警告,說服務器發送的證書不好,但就是這樣。請注意,從命令行或使用rspec運行時,上面的代碼工作正常(除了證書警告錯誤外)。 但是,如果我只從鞋內跑步,那麼我會遇到這個問題。 – Ram 2008-12-31 12:29:54

相關問題