이것은 내가 얻는 오류 메시지입니다.
Failed to execute 'postMessage' on 'DOMWindow': The target origin provided
('https://www.youtube.com') does not match the recipient window's origin
('http://localhost:9000').
대상 원점 http://www.youtube.com
과 수신자 원점이 다른 유사한 문제를 보았지만 대상이 있고 원점이 https://www.youtube.com
어디 https://www.youtube.com
인지는 없습니다 http://localhost:9000
.
- 문제가 없습니다. 무엇이 문제입니까?
- 어떻게 고칠 수 있습니까?
답변
나는 이것이 목표 원점 인 문제라고 생각합니다 https
. iFrame URL http
대신을 사용하고 있기 때문 입니다 https
. 포함시키려는 파일의 URL을로 변경하십시오 https
.
예를 들어 :
'//www.youtube.com/embed/' + id + '?showinfo=0&enablejsapi=1&origin=http://localhost:9000';
되려고:
'https://www.youtube.com/embed/' + id + '?showinfo=0&enablejsapi=1&origin=http://localhost:9000';
답변
다음 과 같이 플레이어 속성에 "origin"
사이트의 URL과 매개 변수 를 추가하십시오 paramVars
.
this.player = new window['YT'].Player('player', {
videoId: this.mediaid,
width:'100%',
playerVars: { 'autoplay': 1, 'controls': 0,'autohide':1,'wmode':'opaque','origin':'http://localhost:8100' },
}
답변
이것을 설정하면 해결되는 것 같습니다.
this$1.player = new YouTube.Player(this$1.elementId, {
videoId: videoId,
host: 'https://www.youtube.com',
답변
JavaScript를 로컬 파일로 저장할 수 있습니다 :
- https://www.youtube.com/player_api
- https://s.ytimg.com/yts/jsbin/www-widgetapi-vfluxKqfs/www-widgetapi.js
첫 번째 파일 player_api
에 다음 코드를 입력하십시오.
if(!window.YT)var YT={loading:0,loaded:0};if(!window.YTConfig)var YTConfig={host:"https://www.youtube.com"};YT.loading||(YT.loading=1,function(){var o=[];YT.ready=function(n){YT.loaded?n():o.push(n)},window.onYTReady=function(){YT.loaded=1;for(var n=0;n<o.length;n++)try{o[n]()}catch(i){}},YT.setConfig=function(o){for(var n in o)o.hasOwnProperty(n)&&(YTConfig[n]=o[n])}}());
두 번째 파일에서 코드를 찾으십시오. this.a.contentWindow.postMessage(a,b[c]);
그것을 다음으로 대체하십시오 :
if(this._skiped){
this.a.contentWindow.postMessage(a,b[c]);
}
this._skiped = true;
물론 하나의 파일로 연결할 수 있습니다-더 효율적입니다. 이것은 완벽한 솔루션은 아니지만 작동합니다!
내 출처 : yt_api-concat
답변
다음과 같은 URL에서로드 중인지 확인하십시오.
“origin”구성 요소 및 “enablejsapi = 1″에 유의하십시오. 원본은 도메인과 일치해야하며 허용 목록에 표시되어 작동합니다.
답변
window.location.href
창의 원점과 일치하도록 URL을 사용해보십시오 .
답변
같은 오류가 발생했습니다. 내 실수는 enablejsapi=1
매개 변수가 iframe
src 에 없다는 것 입니다.
