Django отказался показывать видео YouTube в iframe, потому что он установил "X-Frame-Options" на "SAMEORIGIN"

Моя HTML-страница выглядит так:

 <div>
    <iframe margin="0" padding="0" border="none" width="420" height="345" frameBorder="0"
      ng-src="{{exercise_video_url}}">
    </iframe>  
  </div>

'erc_video_url'Я устанавливаю в моем контроллере, как показано ниже:

$http.get("https://localhost:8000/api/exercises/initial/").then(function(response){

  $scope.initial_data=response.data;

  angular.forEach($scope.initial_data, function(item){

               $scope.exercise_type=item.exercise_type;
               $scope.exercise_description=item.description;
               $scope.exercise_video_url=$sce.trustAsResourceUrl(item.video_url);
})

Я получаю информацию, относящуюся к конкретному упражнению, из моего представления Django, модель упражнения имеет video_url в качестве атрибута. Я где-то читал и вводил сервис $sce в мой угловой контроллер.

сама ссылка на видео выглядит так: " https://youtu.be/******" -> * - это несколько случайных символов. Эта ссылка отлично работает независимо, если вы нажмете ее в браузере или предоставите в качестве источника ng-src напрямую.

Я также попытался прокомментировать 'django.middleware.clickjacking.XFrameOptionsMiddleware' в своем файле settings.py

1 ответ

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

Поскольку вы встраиваете его в iframe, он использует только URL-адрес для вставки YouTube.

поэтому в примере не используйте короткий URL-адрес для встраивания в iframes, используйте встроенный URL-адрес.

НЕПРАВИЛЬНО: <iframe width="1260" height="709" src="<iframe width="1260" height="709" src="https://www.youtube.com/watch?v=xWRNBOXoLf8" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>

ПРАВО: <iframe width="1260" height="709" src="<iframe width="1260" height="709" src="https://www.youtube.com/embed/xWRNBOXoLf8?ecver=1" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>

использование https://www.youtube.com/embed/xWRNBOXoLf8?ecver=1

Другие вопросы по тегам