Современные браузеры применяют к сетевым запросам JavaScript ограничения безопасности, связанные с одним источником. Это означает, что веб-приложение, запущенное из одного источника, не может получать данные из другого источника. В случае с VAST это ограничение безопасности не позволяет XMLHttpRequests JavaScript, созданному кодом отрисовки VAST JavaScript, считывать ответ на запрос объявления VAST, полученный из другого источника.
Это ограничение безопасности предназначено для предотвращения проблем, когда один источник может считывать данные из другого источника, в который пользователь может войти без разрешения этого пользователя. Это ограничение создает проблемы для тегов VAST, которые показываются в среде JavaScript, поскольку сервер объявлений часто находится в другом домене, чем проигрыватель объявлений.
Заголовки CORS (Cross-Origin Resource Sharing) – это проект спецификации W3C, предназначенный для совместного использования ресурсов между разными источниками. Чтобы ответ сервера объявлений VAST можно было использовать в среде JavaScript, он должен содержать следующие заголовки CORS HTTP:
Access-Control-Allow-Origin: <origin header value> Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: должно совпадать со значением заголовка Origin, отправленного с запросом объявления.
Заголовок Access-Control-Allow-Credentials: обеспечивает правильную отправку и получение файлов cookie.
Дополнительную информацию можно найти в черновике спецификации W3C по обмену ресурсами между разными источниками.