Могут ли быть какие-либо недостатки этого вида проверки URL - PullRequest
0 голосов
/ 28 февраля 2012

В некоторых частях моего сайта я позволю пользователям вводить URL. Я работаю над appengine, так что я подумал, чтобы проверить это следующим образом.

try
    response = urlfetch.fetch(url,follow_redirects=True, deadline=1)
    if not response.status_code==200:
       raise SomeCustomException
except: Exception as e:
    my_exception_handling_code(e)

Преимущества

  • автоматически проверяет шаблон URL
  • также гарантирует, что URL-адрес не будет поврежден, а время загрузки не превышает 1 с, что обеспечивает удобство работы при переходе по ссылке на моем сайте.

возможные недостатки я вижу:

  • запрос должен ждать завершения выборки. Вероятно, это не будет большой проблемой, так как очень мало случаев, когда пользователи могут вводить URL (в настоящее время только при регистрации).

Ответы [ 2 ]

2 голосов
/ 28 февраля 2012

Это плохая идея. Как указал С. Лотт, URL может быть недоступен сейчас. Или это может быть доступно только из какой-то конкретной подсети. Или он загружается более 1 секунды. Просто не делай этого. Используйте традиционный подход, например, urlparse.

1 голос
/ 28 февраля 2012

Если пользователь вашего сайта узнал, что вы опрашиваете URL-адрес каждый раз, когда он публикует его, он может использовать его для других целей, таких как голосование в опросе или просмотр страниц.

...