From: Alex Young Date: 2006-08-17T17:24:42+09:00 Subject: Re: Newbie - Test For JPEG Image Over HTTP Neil Charlton wrote: > Hi > > I would like to test for the existence of a .jpg image on a remote > server over HTTP. > > I have tried 2 different methods but they are not what I need. > > Method 1: > > require 'open-uri' > if open('http://example.net/path/to/image.jpg') > # do something > end > > Method 2: > > require 'net/http' > if Net::HTTP.get 'example.net', '/path/to/image.jpg' > # do something > end > > The server where the images are always returns a default page if the > images do not exist so the code above always returns. > > What I need is a way to check what is returned is not a html page but is > a .jpg image. > Oh. Try this: require 'net/http' def url_is_a_jpg(url) u = URI.parse(url) h = Net::HTTP.new(u.host, u.port) r = h.head(u.path) return r.content_type == 'image/jpeg' end -- Alex