Vulpo One

oEmbed

И грядёт эра Web 3.0 — эра межсайтовых взаимодействий,
и основана она будет на трёх китах: OpenID, OAuth и oEmbed

(Кристиан Арчеронострадамус)

В отличие от двух других, OpenID в представлении почти не нуждается. Это паспорт “я такой-то с такого-то сервера”. Сайт запрашивает у сервера авторизации подтверждение, типа, скажи мне myopenid.com, этот ко мне стучится правда vasya_pupkin? Дальше мы его узнаём и пускаем как родного — за него поручились.

OAuth чуть хитрее. Я с ним особо не сталкивался и в дневнике не упоминал. OAuth — это средство авторизованного доступа к API. Что это, с чем его едят, кому это надо и почему это не OpenID неплохо описано в статье на Хабре

И вот мы вплотную подошли к oEmbed. Это очень молодой и возможно даже не до конца проработанный стандарт, но дико удобный и полезный… будет, когда широко распространится. Признаюсь, узнал я о нём буквально на днях.

Функциональность его не нова — мы и ранее вставляли картинки тегами <img>, видео хтоническими конструкциями из <object>, <embed>, флешем, джавой и даже новыми средствами html5, но это каждый сервис извращался во-своему, плееры обновлялись, постоянные ссылки на странички не подкреплялись постоянными ссылками на картинки на них.

oEmbed унифицирует вставки произвольного кода в страницу при помощи достаточно простого API.

Выглядит это так:

image0

Всё предельно просто, кроме того куда нам слать GET-запрос =) Адрес для GET-запроса хранится на самой странице, кусок которой мы хотим внедрить в виде тегов с атрибутами type=”application/json+oembed” или type=”application/xml+oembed”

Типы вставляемых элементов:

  • photo — изображение. Например, с сервиса Flickr. Результат по идее скармливается тегу <img>
  • video — видео, а возможно и аудио. Поддерживается Google Video и YouTube
  • link — ссылка на документ. Допускается краткое (да и полное) содержимое, хотя отображение текста зависит скорее от желания приёмника. WordPress, например, отображает только заголовок, а вот сервис микроблогов identi.ca показывает предпросмотр. Именно линки создаёт плагин oEmbed Provider для WordPress, о котором в следующей мессаге
  • rich — просто вставка куска текста =)

Подробная (и, кстати, небольшая совсем) инструкция на буржуйском есть на официальном сайте http://www.oembed.com/ (хотя там всё равно без 100 грамм не разберешься…)

Ну и на закусь пример:

[embed]http://sunhome.snch.info/avatars/hwc.html[/embed]

Ссылка на какую-нибудь из коллекций в моей галерее аватарок выводит первые 10 штук, заголовок и ссылку на галерею целиком.

UPD: сломалось :(