2
這兩個請求應該有相同的結果,但第一個返回200(OK),第二個返回404(未找到)。這是爲什麼?爲什麼Ruby Net :: HTTP.get_response和Net :: HTTP.new(uri.host).request返回不同的東西?
require 'net/http'
url = "http://readwrite.com/2013/12/04/google-compute-engine"
uri = URI(url)
Net::HTTP.get_response(uri)
#=> #<Net::HTTPOK 200 OK readbody=true>
Net::HTTP.new(uri.host).request(Net::HTTP::Get.new(url))
#=> #<Net::HTTPNotFound 404 Not Found readbody=true>
它只發生了一些網址。我無法弄清楚這種模式。這是另一個例子:http://davidduchemin.com/2014/01/towards-mastery-again/
。
我曾經試過,但它返回NoMethodError:未定義的方法'空? 「爲#。儘管如此,Net :: HTTP.new(uri.host).request(Net :: HTTP :: Get.new(uri.path))完美地工作。謝謝! –
sebagon
另外,感謝您建議使用tcpdump進行調試。它在其他問題上也有很多幫助。 – sebagon