Fixed #778 -- Improved isExistingURL validator not to raise ValidationError for URLs that exist but require authorization. Thanks for the report, lakin wrecker.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@1202 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Adrian Holovaty 2005-11-12 20:25:47 +00:00
parent 1bf6dd7e0e
commit 0a74c68eee
1 changed files with 5 additions and 1 deletions

View File

@ -199,7 +199,11 @@ def isExistingURL(field_data, all_data):
u = urllib2.urlopen(field_data) u = urllib2.urlopen(field_data)
except ValueError: except ValueError:
raise ValidationError, _("Invalid URL: %s") % field_data raise ValidationError, _("Invalid URL: %s") % field_data
except: # urllib2.HTTPError, urllib2.URLError, httplib.InvalidURL, etc. except urllib2.HTTPError, e:
# 401s are valid; they just mean authorization is required.
if e.code not in ('401',):
raise ValidationError, _("The URL %s is a broken link.") % field_data
except: # urllib2.URLError, httplib.InvalidURL, etc.
raise ValidationError, _("The URL %s is a broken link.") % field_data raise ValidationError, _("The URL %s is a broken link.") % field_data
def isValidUSState(field_data, all_data): def isValidUSState(field_data, all_data):