Свойство свойства метатега отсутствует в ответе при получении данных открытого графика с использованием jquery, междоменного ajax и YQL.

Я использую jquery 1.5.1, James Padolsey Cross Domain Ajax 0.11, который использует YQL для получения внешних сайтов.

это мой код

$.ajax({
        url: "http://ogp.me/",
        type: "GET",
        crossDomain: true,
        success: function (res) {
        console.log($(res.responseText));
 });

Проблема в том, что в responseText во всех метатегах отсутствует свойство «свойство».

вот как выглядит исходный код страницы:

‹meta property=og:title content=Open Graph Protocol /›

это то, что firebug показывает значение responseText:

‹метаконтент=Протокол Open Graph/›

Это проблема YQL? Есть ли лучший способ получить данные открытого графика с внешних сайтов?


person ramcal    schedule 03.10.2011    source источник


Ответы (2)


Таблица данных YQL html, которая используется этим междоменным подключаемым модулем AJAX, запускает HTML Tidy (info) на HTML, возвращенный с удаленного сервера. Во время этого процесса искомые атрибуты property удаляются (вероятно, потому, что Tidy считает их недействительными).

person salathe    schedule 04.10.2011
comment
В итоге я создал прокси на своем сайте. спасибо за Ваш ответ - person ramcal; 05.10.2011

Для тех, кто все еще сталкивается с этим вопросом, вам просто нужно добавить AND compat="html5" к своим запросам, и вы получите атрибуты property в своих результатах.

person bearfriend    schedule 20.11.2013