Embed code что это

Как встроить видео

Загруженные видео можно разместить на любом сайте или в блоге. Для этого нужно получить код вставки в интерфейсе Видеохостинга или через API.

Код вставки можно получить с помощью такого запроса:

Код вставки содержит iframe-контейнер, в котором отображается плеер с указанным видео. Разместите код вставки на нужной веб-странице. Вы можете настроить размер видео и параметры запуска плеера. Встроенное видео заработает в течение 30 минут.

Как настроить размер видео

Параметры запуска плеера

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

Значение по умолчанию — 0.

Громкость звука в процентах при загрузке плеера.

Может принимать значения от 0 до 100 включительно.

Значение по умолчанию — 0.

При autoplay=1 параметр preload игнорируется.

Останавливать воспроизведение видео при уходе из зоны видимости и начинать воспроизведение при нахождении в ней. Параметр влияет на показ как видеоконтента, так и рекламных роликов. Он может принимать значения:

Префикс для postMessage-сообщений от плеера.

Значение по умолчанию — 0.

Громкость звука в процентах при загрузке плеера.

Может принимать значения от 0 до 100 включительно.

Значение по умолчанию — 0.

При autoplay=1 параметр preload игнорируется.

Останавливать воспроизведение видео при уходе из зоны видимости и начинать воспроизведение при нахождении в ней. Параметр влияет на показ как видеоконтента, так и рекламных роликов. Он может принимать значения:

Префикс для postMessage-сообщений от плеера.

Источник

HTML5 Video — от А до Я

Пишем код

video >
source src =»movie.mp4″ type =’video/mp4; codecs=»avc1.42E01E, mp4a.40.2″‘ />
source src =»movie.webm» type =’video/webm; codecs=»vp8, vorbis»‘ />
video > >

Само собой есть и более простой вариант вставки видео:

Остается надеется, что в ближайшем будущем для всех браузеров будет достаточно именно такого варианта.

Если же вы работает с Google App Engine, то для каждого видео формата в файл app.yaml вам надо добавить запись вида:
— url: /(.*\.ogv)
static_files: videos_folder/\1
mime_type: video/ogg
upload: videos_folder/(.*\.ogv)

И еще одна очень важная вещь, о которой стоит упомянуть. Надо указывать значения параметра type в тэге source, для того чтобы браузер автоматически смог распознать нужный формат и подгрузить именно его, что позволит увеличить производительность.

Форматы видео

На момент написания статьи (август 2010) наиболее правильным и полным кодом, для вставки видео является следующий:

Буря восторга пронеслась по интернету, когда вышел новый IE 9. Однако пока есть счастливые обладатели IE 6, приходиться изощряться. Пара возможных решений.

Chrome Frame

Преимущество использования плагина Chrome Frame состоит в том, что его можно поставить один раз, а все новые фишки HTML, JavaScript и CSS будут обязательно поддерживаться без какого-либо обновления. Этот плагин является спасением для веб-разработчиков, которые не будут заморачиваться и тратить время на написание IE-совместимой версии сайта. (Немного спорное заявление, особенно если вспомнить какой шум был в сети, когда вышел этот плагин.)

Назад к Flash

Шифруемся, или надо перекодировать видео

Плюшки

Так как видео мы встраиваем полноценным html способом, то значит мы можем использовать всю мощь веба для наших целей. Ниже опишу в чем это мощь состоит. (К сожалению опять без наглядных примеров, так что идем на сайт оригинала)

Video + HTML

Для начала, мы можем использовать различные HTML атрибуты. К примеру, параметр tabindex позволит задать положение. Есть пара параметров, которые есть и в аудио, это loop и autoplay. В параметре poster можно указать картинку, которая будет отображаться во время загрузки видео. Указав controls мы скажем браузеру — «Используй нативные контролы, мы тут ничего не придумали». Ну и еще есть preload, который позволяет подгружать видео фоном. В итоге получаем нечто подобное:

video poster =»star.png» autoplay loop controls tabindex =»0″ >
source src =»movie.webm» type =’video/webm; codecs=»vp8, vorbis»‘ />
source src =»movie.ogv» type =’video/ogg; codecs=»theora, vorbis»‘ />
video >

video poster =»star.png» autoplay =»autoplay» loop =»loop» controls =»controls» tabindex =»0″ >
source src =»movie.webm» type =’video/webm; codecs=»vp8, vorbis»‘ />
source src =»movie.ogv» type =’video/ogg; codecs=»theora, vorbis»‘ />
video >

Video + JS

Тэг video обладает рядом параметров, управлять которыми можно с помощью яваскрипта. Пример можно увидеть на сайте W3.

Для начала, как и любой html компонент, видео реагирует на все стандартные события, как например наведение мыши, перетаскивание и так далее. Но помимо них оно обладает рядом собственных, позволяющих определить, когда видео было запущено, остановлено и прочее. Уже с момента загрузки видео мы можем использовать целый ряд событий, связанных как с работой по сети (loadstart, progress, suspend, abort, error, emptied, stalled), так и с буферизацией (loadedmetadata, loadeddata, waiting, playing, canplay, canplaythrough). Простой пример, показывающий как можно настроить воспроизведение видео в тот момент, когда оно готово к проигрыванию:

В сети выложена уже появились уже и кастомные настройки, позволяющие управлять например скоростью воспроизведения или добавлять взаимодействие между 2 видео.

Video + CSS

Тут практически без комментариев — видео как элемент веб-страницы воспринимает всевозможные css штуки — начиная от border, opacity и заканчивая masks, gradients, transforms, transitions и animations. Тут все уже зависит исключительно от вашей фантазии.

Video + canvas

HTML5 принес в этом мир еще одну мощную вещь — canvas. И что же мешает нам использовать два этих нововведения вместе? Правильно — ничего.

Пример совместного использования canvas и video может быть следующим — получение скриншотов из проигрываемого видео. У canvas есть метод drawImage, позволяющий получать видео из 3х источников: из изображения как такового, из другого canvas и из video! А с помощью другого метода — toDataURL мы уже экспортируем изображение в нужно нам формате. Следующий листинг показывает как снимать скриншоты из видео каждые 1,5 секунды:

Я думаю люди с богатой фантазией уже представили, что можно тут придумать. Для них и все кого интересует возможность получения фреймов видео есть интересная вещь — WebGL.

Video + SVG

SVG предоставляет нам возможность программного управления отображения векторной графики. Но помимо этого есть такая замечательная штука как SVG filter effects. С помощью этих фильтров можно накладывать определенные эффекты на отдельные элементы веб-страницы. Выглядит это примерно таким образом:

svg id =’image’ version =»1.1″ xmlns =»http://www.w3.org/2000/svg» >
defs >
filter id =»myblur» >
feGaussianBlur stdDeviation =»1″ />
filter >
defs >
svg >
style >
video < filter:url(#myblur); border: 2px solid red; >
style >

Подобный inline-вариант обработки работает в Firefox 4 и IE9, для остальных браузеров уже необходим яваскрипт и css.

Заключение

Без сомнения уже многие сумели оценить плюсы от нового html компонента. В интернете (и на хабре — прим. пер.) выложена уже масса примеров (1, 2, 3, 4, 5, 6)

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

Источник

oEmbed. Делаешь веб-сервис? — Делай и oEmbed

Embed code что это. Смотреть фото Embed code что это. Смотреть картинку Embed code что это. Картинка про Embed code что это. Фото Embed code что это

Конечно вы видели этот эффект, когда вставляешь в фейсбуке или вконтакте ссылку, и в посте тут же начинает подгружаться какой-то контент с сайта, на который ведет ссылка. И я видел, но даже не представлял, насколько это легко можно сделать с oEmbed’ом.

oEmbed.com — впринципе, на этом можно было бы и закончить читать тем, кто хочет провести самостоятельное мини-исследование.

Немного теории

oEmbed — открытый формат, созданный с целью упрощения внедрения содержимого одной веб-страницы в другую. В роли контента могут выступать фотографии, видеоролики, ссылки или другие типы данных. Проще говоря, использование oembed позволяет получить embeded-контент (например, видео с ютуба), когда пользователь постит обычную ссылку на него на вашем ресурсе.

Обмен информацией, с точки зрения oEmbed, происходит между поставщиком и потребителем. Потребитель желает показать встроенное представление стороннего ресурса на своем собственном сайте, например, это может быть фото с flickr или видео c youtube/vimeo. Поставщик реализует oEmbed API для обеспечения доставки этого контента потребителю.

Запрос пользователя — обычный GET запрос, должен включать url и несколько необязательных параметров, например максимальную ширину, высоту, формат (JSON, XML, etc.)
Например, чтобы заембедить видео с ютуба, мы его будем запрашивать следующим образом:

В ответе, который мы получим JSON, который содержит информацию о видео, а также embed-html.

А ведь с таким же успехом мы могли получать API ключи, авторизоваться, делать запрос на поиск ролика, получать данные и самостоятельно формировать object и вставлять его.

Дальше больше. Первый же запрос в гугле о jquery-плагине привел меня на http://code.google.com/p/jquery-oembed/. Причем доступные примеры объясняют, как использовать плагин по полной. Написан он достаточно просто, и если случилось так, что вы не обнаружили там нужный вам ресурс, дописать его реализацию будет совсем не сложно.
Embed code что это. Смотреть фото Embed code что это. Смотреть картинку Embed code что это. Картинка про Embed code что это. Фото Embed code что это

Немного практики

На сайте Best Youtube Lyrics, который cделали ребята из Zengile, можно добавлять клипы с ютуба, дополняя их словами песен, или же например искать клип по словам песни. Т.е. главная бизнес-логическая штука — добавление видео. Я просто решил применить oEmbed, чтобы показывать видео, которое будет прикреплено.

В haml-вьюхе я дописал одну строчку с дивом, в котором будет отображаться видео

В подключаемый js-файл дописал одну функцию. Вот и все:
Вот такой вот результат:
Embed code что это. Смотреть фото Embed code что это. Смотреть картинку Embed code что это. Картинка про Embed code что это. Фото Embed code что это
Посмотреть как это работает и добавить свой клип и слова можно здесь.

Мораль

Вы потребитель: вы делаете какой-то социальный ресурс, так почему бы вам не позаботиться о ваших пользователях и не заставлять их копировать html-embed-код для того, чтобы их видео/фото опубликовалось на вашем ресурсе. Тем более что часто html-теги отсекаются, а вставлять iframe’ы пользователям не разрешается, мотивируя безопасностью.

Вы поставщик: вы создали ресурс, на котором есть интересный контент (какая-нибудь имедж-борда или просто ресурс-паразит поверх социальной сети, как instagram). Реализуйте у себя oembed API, и тогда вас будет проще интегрировать в другие сайты, количество обращений к вашему ресурсу увеличится. Инвестиционные деньги потекут рекой.

UPD Материал подготовлен для группы Code-n-coffee, которая проводит IT мероприятия в С-Пб. Цель этих встреч не только обменяться знаниями, но и познакомить разработчиков друг с другом, сформировать коммьюнити и developer culture. Мы хорошие. Это бесплатно. Присоединяйтесь.

Источник

Предпосылки:Базовая компьютерная грамотность, установка базового программного обеспечения, базовые знания работы с файлами, знакомство с основами HTML (как описано в разделе Начало работы с HTML) и предыдущими статьями в этом модуле.
Задача:Узнать, как встраивать элементы в веб-страницы, используя (en-US), и (en-US), например, флеш-ролики и другие веб-страницы

Краткая история внедрения

Урок истории закончен, давайте двигаться дальше и посмотрим, как использовать некоторые из них.

Активное обучение: использование классического внедрения

В этой статье мы собираемся перейти прямо в раздел активного обучения, чтобы сразу дать вам реальное представление о том, для чего используются технологии внедрения. Нам очень хорошо знаком Youtube, но многие не знают о некоторых доступных для него средствах совместного доступа. Давайте посмотрим, как Youtube позволяет нам встраивать видео на любую страницу, которая нам нравится, используя (en-US).

Дополнительно вы также можете попробовать внедрить карту Google следующим образом:

Если вы допустили ошибку, вы всегда можете сбросить её с помощью кнопки «Сброс». Если вы действительно застряли, нажмите кнопку «Показать решение», чтобы увидеть ответ.

Подробно об Iframes

Этот пример включает основы, необходимые для использования :

Примечание: Чтобы повысить скорость загрузки, рекомендуется установить атрибут src в элементе iframe с помощью JavaScript после того, как основное содержимое будет загружено. Это ускорит вашу страницу и уменьшит время загрузки официальной страницы (важный показатель SEO.)

Проблемы безопасности

Clickjacking – это один из видов обычной атаки iframe, когда хакеры внедряют невидимый iframe в ваш документ (или внедряют ваш документ на свой собственный вредоносный веб-сайт) и используют его для захвата взаимодействия пользователей. Это обычный способ ввести пользователей в заблуждение или украсть конфиденциальные данные.

Используйте только при необходимости

Если контент лицензирован, вы должны соблюдать условия лицензии. Например, контент на MDN лицензирован на licensed under CC-BY-SA. Это означает, что вы должны относиться к нам с уважением, когда цитируете наш контент, даже если внесли в него существенные изменения.

Используйте HTTPS

HTTPS это зашифрованная версия HTTP. Вы должны обслуживать свои веб-сайты, используя HTTPS, всегда, когда это возможно :

Примечание: Github pages позволяют предоставлять контент через HTTPS по умолчанию, поэтому это полезно для размещения контента. Если вы используете другой хостинг и не уверены, спросите хостинг-провайдера об этом.

Всегда используйте атрибут sandbox

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

Контент, не ограниченный sandbox, может сделать слишком многое (выполнение JavaScript, отправка форм, всплывающие окна и т. д.). По умолчанию включайте все возможные ограничения, используя атрибут sandbox без параметров, как показано в предыдущем примере.

Примечание. «Песочница» не обеспечивает защиту, если злоумышленники могут обманывать людей через прямое посещение вредоносного контента (вне iframe). Если есть вероятность, что определённый контент может быть вредоносным (например, созданный пользователями контент), пожалуйста, используйте его из другого domain на ваш основной сайт.

Настройка директив CSP

Примечание: вы можете прочитать пост Фредерика Брауна On the X-Frame-Options Security Header для более детальной информации по теме. Разумеется, объяснение в этой статье далеко не полное.

_и_ «>_и_ » title=»Permalink to Элементы и «>Элементы и

Если вам нужно внедрить контент плагина, ниже исчерпывающая информация, которая вам понадобится:

(en-US)
URL встраиваемого контента src data (en-US)
точный media type встраиваемого контента type type (en-US)
высота и ширина (в пикселях) элемента, управляемого плагином height
width
height (en-US)
width (en-US)
имена и значения, предоставляемые плагину в качестве параметровОсобые атрибуты,с их именами и значениямиодиночные элементы

Ниже представлен пример использования элемента для вставки Flash-фильма (загляните на live on Github, а также на check the source code):

Достаточно ужасно, не так ли? Html-код, генерируемый Flash, имел склонность быть значительно хуже. Он использовал элемент вместе со встроенным элементом для скрытия всего фундамента (взгляните на пример). Flash ранее использовался в качестве резерва для HTML5-видео (в случае его отсутствия), но со временем необходимость в этом отпала.

PDF-файлы были необходимым средством достижения цели в качестве преобразования бумажной информации в цифровую, но, в то же время, они имеют множество проблем доступности и плохо читаемы на мелких экранах. В некоторых кругах они всё ещё пользуются популярностью, так что заметим, что вместо встраивания в страницу следует использовать ссылки (для скачивания или чтения на отдельной вкладке).

Дело против плагинов

Когда-то плагины были незаменимы в Интернете. Помните дни, когда вам приходилось устанавливать Adobe Flash Player для просмотра онлайн-фильма? И потом постоянно возникали раздражающие предупреждения об обновлении Flash Player и Java Runtime Environment. С тех пор веб-технологии стали намного надёжнее. Почти всем сервисам пришло время прекратить доставлять контент с помощью плагинов и вместо этого использовать веб-технологии.

Итак, что нужно делать? Если вам нужна интерактивность, HTML и JavaScript могут легко выполнить задание для вас без необходимости использования апплетов Java или устаревшей технологии ActiveX / BHO. Вместо того, чтобы полагаться на Adobe Flash, вы можете использовать видео HTML5 для своих медиа-потребностей, SVG для векторной графики и Canvas для сложных изображений и анимаций. Питер Элст уже писал несколько лет назад, что Adobe Flash редко является подходящим инструментом для работы, за исключением специализированных игр и бизнес-приложений. Что касается ActiveX, браузер Microsoft Edge (en-US) больше не поддерживает его.

Заключение

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

Источник

Программный поиск общего кода с помощью oEmbed

Всем доброго времени суток! Хочу поделиться переводом статьи «»Programmatically Discovering Sharing Code With oEmbed» автора Drew McLellan.

Введение

На многих сайтах размещены мультимедиа и контент, которыми можно поделиться в другой платформе с помощью некоторого HTML-кода для встраивания. Что произойдет, если у вас есть только URL-адрес элемента и вам нужно найти встраиваемую версию мультимедиа без участия человека? Вот тут нам и пригодится oEmbed.

Сеть полна сервисов, которые содержат разнообразный контент, такой как видео, изображения, музыка и подкасты, карты и графики, а также всевозможные развлечения. Скорее всего, когда вы добавите свой контент на сайт, он предложит вам способ внедрить этот контент в веб-страницу где-нибудь ещё.

На таких сайтах, как YouTube, есть собственный встраиваемый проигрыватель, который популярно использовать в постах блога и даже на страницах продуктов. Soundcloud имеет код для встраивания их музыкального проигрывателя на сайт вашей группы. Благотворительные сборщики денег могут загрузить маршрут своей большой гонки на сайт, подобный Strava, и захотеть поделиться им на своем сайте по сбору средств, чтобы показать их спонсорам.

Все это можно сделать, найдя опцию « Поделиться» на хостинг-сайте и скопировав некоторый код, который обычно представляет собой смесь HTML и JavaScript. Затем этот код обычно может быть вставлен на целевую страницу, и хостинг-сайт предоставит богатое представление контента для просмотра всем вашим друзьям, клиентам и контактам.

Пока все хорошо, и это достаточно хорошо подходит для встраивания контента вручную. Тем не менее, есть другой вариант использования, где результат один и тот же, но путь к нему совершенно другой.

Программный обмен

Давайте представим, что вы создаете приложение или сайт, который принимает контент от пользователя. Это может быть что-то простое, например, базовая интернет-страница для сотрудников, чтобы делиться новостями с коллегами, или что-то огромное, например, целая социальная сеть, где люди могут зарегистрироваться и начать публиковать сообщения.

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

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

Второй вариант — превратить его в ссылку. Это хороший выбор, так как пользователи могут перейти по ссылке и получить доступ к контенту. Но при этом они покидают ваш сайт и могут не вернуться.

Наилучшим пользовательским опытом может быть возможность извлекать проигрыватель для этого контента и вставлять его прямо туда, а не только в URL. Это позволило бы пользователям просматривать содержимое прямо на вашем сайте, как, например, на Facebook.

Это создает проблему. Учитывая URL, как я смогу превратить это в код для встраивания HTML / JavaScript, необходимый для показа большинству пользователей на странице?

Если это такой известный сайт, как YouTube, я мог бы написать некоторый код, который использует API YouTube для извлечения видеоинформации и получения или создания кода для встраивания таким образом. Я мог бы сделать то же самое для других видео сервисов, таких как Vimeo и VIVO. Я могу написать код для распознавания URL-адресов Flickr и Instagram и использовать их API-интерфейсы для получения хороших встраиваемых версий фотографий. И то же самое для Твиттера и твитов. Но на это уйдет очень много сил и времени!

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

Происхождение OEmbed

Это была именно та проблема, с которой Лия Калвер столкнулась, работая над Pownce (действительно инновационным сайтом социальных сетей, который был Betamax для VHS в Twitter). Pownce хотел встроить богатые представления контента в поток обновлений пользователя, но не хотел ограничивать поддержку только теми службами, с которыми они специально писали код для интеграции. На ужине с коллегой Майком Мэлоуном, а также с Кэлом Хендерсоном (который возглавлял инжиниринг в Flickr — одном из крупнейших поставщиков такого контента в то время) и Ричарде Кроули они вместе выработали идею открытого стандарта для получения кода для встраивания. URL. Хендерсон ушел и разработал что-то на основе обсуждения, так и родился oEmbed.

Использование OEmbed

Вот как это работает.

Он начинается с URL-адреса, который указывает на один элемент содержимого. Это может быть видео на YouTube, изображение или что-то еще. Обычно это будет предоставляться пользователем вашего сайта или приложения как часть некоторого контента, который он хочет опубликовать. Первым шагом является получение содержимого страницы по этому URL, который должен быть HTML-страницей.

Если сайт, на котором размещен контент, поддерживает oEmbed, в разделе этой страницы должен быть link элемент с oembed типом контента:

Примечание по XML: oEmbed поддерживает ответы как в формате XML, так и в формате JSON. В этой статье я рассматриваю только JSON, потому что мы не дикари. Но если вам необходимо работать с XML, имейте в виду, что он поддерживается со спецификацией oEmbed, хотя вы можете обнаружить, что некоторые провайдеры предлагают только ответы JSON.

Этот тег ссылки в качестве rel атрибута установлен на alternate и type установлен либо либо, application/json+oembedлибо text/xml+oembed. Именно этот атрибут подсказывает нам тот факт, что указанный в URL-адресе на href самом деле является конечной точкой API oEmbed для получения сведений о содержимом.

Этот URL обычно имеет два параметра: url и format.

Embed code что это. Смотреть фото Embed code что это. Смотреть картинку Embed code что это. Картинка про Embed code что это. Фото Embed code что это
Общие параметры URL для начального запроса потребителя

Полная спецификация идет в гораздо более подробно здесь (и вы должны ссылаться, что если создать свою собственную реализацию), но эти два параметра, вы, вероятно, увидеть больше всего.

Итак, у нас есть URL, выбрали страницу, нашли тег ссылки oEmbed с другим URL для конечной точки API. Затем мы запрашиваем этот новый URL, и он возвращает всю информацию, которую служба должна предоставить об этом фрагменте контента.

А теперь мы пообщаемся! Ответ дает нам много информации о контенте. В version обозримом будущем должно быть 1.0, что является текущей версией спецификации oEmbed. Другая возвращаемая информация во многом зависит от стоимости type.

Типы Ответов

Значение type ключа в ответе указывает, какой тип носителя вы собираетесь встраивать.
Embed code что это. Смотреть фото Embed code что это. Смотреть картинку Embed code что это. Картинка про Embed code что это. Фото Embed code что это
Помимо выделенного видеоконтента, наиболее распространенным типом, который вы можете увидеть в дикой природе, является rich. Даже сам Flickr, все еще отправляя photo ответ, также предоставляет html крутой встраиваемый «проигрыватель» для изображения.

В большинстве случаев встраивание контента на ваш сайт — это всего лишь случай использования кода, предоставленного в качестве html значения.

Примечание О Безопасности

Вы должны быть осторожны с одной вещью: если брать ответ HTML и программно внедрять его в страницу, которую вы размещаете, без человека, который дважды проверяет код, который вы вставляете, всегда существует вероятность того, что этот код будет вредоносным. Таким образом, вы должны принять соответствующие меры для снижения риска.

Это может включать в себя фильтрацию URL-адресов, чтобы убедиться, что схемы и домены соответствуют ожидаемым, и песочницу кода в iframe в другом домене без файлов cookie. Вы должны получить доступ к ситуации, в которой вы используете код, и убедиться, что вы не подвергаете себя чрезмерному риску.

Начнём

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

Например, НПМ упаковывание oembed обеспечивает очень простой интерфейс для создания запроса на основе URL контента и получение ответа обратно oEmbed.

Сначала установите пакет в свой проект:

А затем запросите URL. Здесь я использую URL-адрес презентации в Notist.

Если вы хотите сделать то же самое в PHP, удобный пакет с именем embed / embed доступен для установки через Composer.

И тогда в вашем проекте PHP:

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

Вывод

oEmbed — это очень элегантное решение очень специфической проблемы. Вам наверное кажется, что от этого выиграют лишь несколько инженеров, работающих в больших социальных сетях, но на самом деле издательские системы, в которых пользователь может ввести URL, на удивление распространены. Найдите мне одного внутреннего инженера, которому в какой-то момент не нужно было создавать какую-то CMS. Мы можем не думать об этом в тех же терминах, но если вы принимаете ввод пользователя, вы должны подумать о том, что делать, если этот ввод содержит URL-адреса.

Теперь, когда вы знаете о oEmbed (извините), но у вас нет оправдания не уделять серьезного внимания тому, как вы будете обрабатывать URL-адреса в ваших будущих проектах.

Источник

Добавить комментарий

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