405 Метод не разрешен в Net :: HTTP запросе [ruby on rails] - PullRequest
1 голос
/ 26 октября 2011

Я пытаюсь проверить, есть ли удаленный URL со следующим кодом:

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,3 с => 0,9 с).

Любойидеи почему это происходит?Thx

1 Ответ

3 голосов
/ 26 октября 2011

Существует вероятность, что URL-адрес @endpoint, с которым вы пытаетесь взаимодействовать, не поддерживает запросы HEAD (что было бы очень странно, но все же может иметь место). Ваш код отлично работает для меня с несколькими URL-адресами (google.com, stackoverflow.com и т. Д.)

Вы пробовали запрос curl, чтобы увидеть, что он возвращает?

curl -I http://www.the_website_you_want_to_test.com
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...