Когда я добавляю и сохраняю один из URL-адресов с одного из сайтов, на котором работает наша компания, в мой раздел LinkedIn About Summary
(с помощью кнопки Link
), вы в итоге правильно отображаете изображение миниатюры видео. сайт отображается как встроенный контент, но в конечном итоге вы также видите некорректный URL нашего видео в кнопке View
модального окна, которая появляется при нажатии на миниатюру видео раздела about. Проблема с результирующим открытым URL-адресом заключается в том, что в нем экранированные символы экранированы следующим образом: &
.
Я изучил следующую документацию о том, как LinkedIn получает теги oEmbed / JSON изисходный код страниц, и этот метод, по-видимому, подходит для удаления исходного кода наших страниц, поскольку удаление метатега и повторная вставка ссылки в разделе about приводит к открытию другого URL-адреса в кнопке View
(другим методом, который яя не знаю) и, возвращая метатег и снова вставляя его в раздел about, снова показывает предыдущий неверно сформированный URL.
Я создал тестовый сайт, чтобы показать этот случай. URL-адрес этого сайта следующий:
http://site-566738.bcvp0rtal.com/
Метатег в исходном коде сайта выглядит следующим образом:
<link rel="alternate" type="application/json+oembed" href="https://oembed.brightcove.com/?format=json&maxwidth=480&maxheight=270&url=http%3A%2F%2Fplayers.brightcove.net%2F6021289027001%2Fdefault_default%2Findex.html%3FvideoId%3D6075281345001" title="Ocean test">
Переход к URL-адресу href, который имеет этот тег, показываетследующий JSON:
{
type: "video",
version: "1.0",
provider_name: "Brightcove",
provider_url: "https://players.brightcove.net/pages/v1/index.html?accountId=6021289027001&playerId=default&videoId=6075281345001",
title: "Ocean test",
width: 480,
height: 270,
thumbnail_url: "https://cf-images.us-east-1.prod.boltdns.net/v1/jit/6021289027001/186388f7-97a0-44fb-bd59-3744e7a16cbd/main/1280x720/15s200ms/match/image.jpg",
html: "<iframe class="brightcove-embed" src="https://players.brightcove.net/pages/v1/index.html?accountId=6021289027001&playerId=default&videoId=6075281345001&mode=iframe" width="480" height="270" scrolling="no" frameborder="0" allowfullscreen></iframe>",
}
Этот JSON фактически отправляется внешней службой, которую мы настроили для возврата действительных данных oEmbed по запросу, и был протестирован и утвержден в других сценариях внедрения.
Отэтот JSO, LinkedIn получает URL-адрес миниатюрного видео, а также URL-адрес видео (тот, что в атрибуте src
в iframe
, определенном в свойстве html
JSON), но, как вы можете видеть, здесь мы неэкранирование символов амперсанда, и все же каким-то образом это отображается как &
в кнопке View
. В результате URL-адрес в кнопке View
отправляет пользователя на нерабочий URL-адрес в наших службах, и в итоге он отображается на странице About Summary
в профиле LinkedIn (обратите внимание на экранированные символы):
http://players.brightcove.net/pages/v1/index.html?accountId=6021289027001&playerId=default&videoId=6075281345001&mode=iframe
URL-адрес без экранированных символов может быть правильно интерпретирован нашими службами, и видео также может быть правильно просмотрено.
Есть ли способ для вашего метода не избежать этогосимволы амперсанда?
Спасибо всем заранее.