2011-07-04 13 views

Respuesta

10

Usted puede usar la biblioteca incorporada Net :: HTTP para hacer la mayor parte de esto para usted:

require 'net/http' 

Net::HTTP.start('stackoverflow.com') do |http| 
    response = http.request_head('/robots.txt') 

    response['Last-Modified'] 
    # => Sat, 04 Jun 2011 08:51:44 GMT 
end 

Si lo desea, puede convertir que a una fecha adecuada utilizando Time.parse.

3

Como dice @tadman en su respuesta, un HTTP "HEAD" request es la forma correcta de verificar la fecha de la última modificación.

También puede hacerlo usando un conditional GET request usando los encabezados del modificador "IF- *".

Qué usar depende de si tiene la intención de descargar inmediatamente la página. Si solo quieres la fecha usa HEAD. Si quiere el contenido si ha habido un cambio use GET con los encabezados "IF- *".

Cuestiones relacionadas