Как проверить, действителен ли URL-адрес flickr

Нам нужно, чтобы пользователь мог вводить URL-адреса в нашем медиа-разделе. Однако поскольку пользователи могут ошибаться при вводе URL-адресов, нам необходимо убедиться, что URL-адреса являются допустимыми URL-адресами flickr. Действительный URL, например: http://www.flickr.com/photos/53067560@N00/sets/72157606175084388/

Недействительный URL, например: http://www.flickr.com/photos/53067560@N00/sets/12345/

Flickr предлагает службы API, но мне не удалось найти такую, которая бы проверяла URL.


person NM.    schedule 24.11.2009    source источник


Ответы (3)


Самый простой способ — сделать запрос HTTP HEAD к URL-адресу, что будет означать, что URL-адрес действителен, если он возвращает код ответа HTTP 200.

Вы также можете использовать регулярное выражение, чтобы убедиться, что оно соответствует ожидаемому шаблону, что, возможно, сократит количество запросов, которые вам придется делать.

person Yacoby    schedule 24.11.2009

Вы можете сделать запрос http HEAD к URL-адресу и проверить код ответа http. Любой код ответа больше или равен 200 и меньше 300 допустим. По всей вероятности, хорошие URL-адреса вернут код 200.

person Asaph    schedule 24.11.2009

Я почти уверен, что вы можете, по крайней мере, использовать `flickr.photos.getInfo', чтобы увидеть, существует ли рассматриваемая фотография. Остальная часть URL-адреса может быть проверена в соответствии с полученным результатом.

Конечно, вы не можете проверить все возможные перестановки, но когда дело доходит до photo id, я почти уверен, что вы можете положиться на Flickr API... иначе у них самих будут проблемы, не так ли?

Конечно, вы можете перепроверить, выполнив HTTP-запрос GET для URL-адреса и убедиться, что полученный HTTP-код имеет вид 200 (или, может быть, что-то >=200 и ‹=300).

person jldupont    schedule 24.11.2009