Я пытаюсь выяснить, как я могу проверить, что я подаю в несущую волну на самом деле изображение.Источник, из которого я получаю URL-адреса своих изображений, не возвращает мне все живые URL-адреса.Некоторые изображения больше не существуют.К сожалению, он на самом деле не возвращает правильные коды состояния или что-то еще, потому что я использовал какой-то код, чтобы проверить, существует ли удаленный файл, и проходил ли он эту проверку.Так что теперь, чтобы быть в безопасности, я хотел бы проверить, вернул ли я верный файл изображения, прежде чем я скачу его.
Вот код удаленной проверки файлов, который я использовал только для справки, но я бы предпочел что-то, что действительно может идентифицировать, что файлы являются изображениями.
require 'open-uri'
require 'net/http'
def remote_file_exists?(url)
url = URI.parse(url)
Net::HTTP.start(url.host, url.port) do |http|
return http.head(url.request_uri).code == "200"
end
end