#jquery #ajax
#jquery #ajax
Вопрос:
Есть ли способ получить информацию о веб-сайте (возможно, метаданные и изображения) с помощью jQuery? Примером того, чего я пытаюсь достичь, является то, что когда я делюсь ссылкой на facebook, она выводит соответствующие изображения и показывает текстовую заметку с веб-сайта (статьи).
Есть ли способ легко выполнить это с помощью jQuery (с ajax)?
Комментарии:
1. Можете ли вы предоставить часть кода, который вы создали на данный момент? Это в основном то, что делает jQuery, получение информации о веб-сайте …;)
Ответ №1:
Ну, я думаю, вы не сможете достичь этого с помощью одного Javascript (jQuery). Из-за политики того же источника вызовов AJAX вы не можете запрашивать информацию напрямую. Но вы могли бы отправить вызов AJAX своему собственному приложению с URL-адресом, чтобы оно загрузило нужную страницу и проанализировало ее мета-теги и заголовок. И возврат ответа в надлежащем формате.
Другой идеей было бы заставить сервер фактически просматривать страницу и делать ее скриншот и, возможно, хранить базу данных уменьшенных изображений для каждого домена, я не знаю, насколько это будет дорого с точки зрения вычислений, однако, кажется, намного хуже, чем простой синтаксический анализ.
Ответ №2:
Если вы пытаетесь определить оптимальное изображение и текст для отображения по заданному URL, это сложная проблема, особенно учитывая, что большинство сайтов еще не используют семантическую разметку HTML5.
Я полагаю, Facebook позволяет разработчикам отмечать свою страницу, чтобы определить это. Для получения дополнительной информации ознакомьтесь:
http://developers.facebook.com/docs/reference/plugins/like/
http://developers.facebook.com/tools/lint/
Что касается того, чтобы делать это полностью с помощью jQuery, я думаю, что Uku правильный — я не думаю, что вы можете очистить страницу в другом домене. То, что я делал в прошлом, совпадает с тем, что он предлагает: отправьте AJAX-вызов PHP-скрипту на моем сервере, который загружает страницу и возвращает ее. Затем вы можете использовать PHP или JS для ее анализа, но остается вопрос, каков наиболее эффективный способ ее анализа?
Комментарии:
1. Что касается поиска оптимального изображения: я успешно использовал очень простой подход. Просто извлеките все теги <img> (CSS-фоны не считаются фактическим содержимым) и проверьте размеры файлов связанных изображений либо через http-заголовок content-length, либо путем временной загрузки. Затем считайте самое большое изображение основным изображением страницы.