Skip to content

A variant of HTTP URL Validation is a Rails plugin that allows you to validate a URL entered in a form. It validates if the URL exists by hitting it with a HEAD request (and the improvements include retrying with other variants until it fails decisively).

Notifications You must be signed in to change notification settings

kete/http_url_validation_improved

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HTTP URL Validation Plugin Improved
by Erik Gregg, Walter McGinnis, Kieran Pilkington

This work is based on Erik's work, but mainly refined for the Kete application (http://kete.net.nz).

Inspired by HTTP URL Validation Plugin by C. Carneiro Jr.
========================

HTTP URL Validation Improved is a Rails gem that allows you to validate a URL 
entered in a form. It validates if the URL exists by hitting it with a HEAD 
request.

The improved version includes retries for common patterns when the head request is refused before giving a failure notice.

It also looks up a SITE_URL constant to the user agent in the headers.

There's also the option to also check that the URL returns content of 
a specified type. Here’s how you can use it your model:

Check for content type:
  validates_http_url :url, :content_type => "text/html"

Do not check for content type, just make sure the site is accessible:
  validates_http_url :website

Make sure there is a DNS entry for a domain
  validates_http_domain :domain		
# Domain must be in 'www.site.com' for or 'site.com' form.  No http://, no path.

This example will make sure the value entered for the URL field points to a 
publicly accessible HTML page, and the photo field points to an image:
  validates_http_url :image_url, :content_type => "image"
# :content_type checks for a matching substring, so any image will validate

========================

Bug reports and feedback are always welcome. 

Please report them via http://github.com/kete/http_url_validation_improved

About

A variant of HTTP URL Validation is a Rails plugin that allows you to validate a URL entered in a form. It validates if the URL exists by hitting it with a HEAD request (and the improvements include retrying with other variants until it fails decisively).

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages