2011-10-26 32 views
1

我试图验证是否有与下面的代码远程网址:405不允许的方法上的Net :: HTTP请求[Ruby on Rails的]

endpoint_uri = URI.parse(@endpoint.url) 
endpoint_http = Net::HTTP.new(endpoint_uri.host, endpoint_uri.port) 
endpoint_request = Net::HTTP::Head.new(endpoint_uri.request_uri) 
endpoint_response = endpoint_http.request(endpoint_request) 

我仍然得到405不允许的方法。当我使用Get而不是Head时,Net::HTTP::Head.new我得到了200成功,但是在整个远程文档中响应的结果是响应时间更长(0.3s => 0.9s)。

任何想法为什么会发生这种情况? Thx

回答

3

您尝试与之交互的网址不支持HEAD请求(这可能很奇怪,但仍可能是这种情况)。你的代码适合我用少量的网址(google.com,stackoverflow.com等)

你试过一个curl请求来看看它返回什么吗? ?

curl -I http://www.the_website_you_want_to_test.com 
+0

像你说的,但看看它返回'卷曲-I HTTP它的怪异:不允许//www.kirupafx.com/WebService/TopMovies.asmx WSDL' ** 405 **方法。无论如何感谢命令'卷曲'和答案 –

相关问题