-1

내가 다음과 같이 HTML 서비스를 사용하여, script.google.com에서 생성 된 사이트 내에 포함 된 Google지도를 사용하고 사용되지 않는 지도가 포함되어 있습니다 (https://script.google.com/macros/s/AKfycbzFiIPsnNgDnz8pmykbyok1xwDdL85EEAwqohoSo9G1QasbWNk/exec 참조). 그러나 이제는 "원본 교차 iframe의 getCurrentPosition 및 watchPosition 사용이 더 이상 사용되지 않으며 2017 년 12 월경 M63에서 사용할 수 없게됩니다"라는 경고를받습니다.getCurrentPosition은

문제는, script.google.com에서 HtmlService.createTemplateFromFile을 사용하면 allow="geolocation"을 iFrame에 추가 할 수있는 옵션이 없다는 것입니다. (HtmlService가 자동으로 iFrame을 생성합니다.) 그러면 웹 앱이 실패합니다 십이월에.

문제를 피하려면 어떻게해야합니까?

많은 감사,

Sarah.

답변

0

12: Deprecating Permissions in Cross-Origin Iframes 링크를 확인하는 것이 좋습니다. 교차 기점 프레임에서 이러한 기능을 사용하려면 포함 페이지에서 해당 기능을 프레임에 사용할 수 있도록 기능 정책을 지정해야합니다.

예를 들어, iframe에 위치 정보를 사용하려면 베더는 같은 iframe 태그를 지정할 수 있습니다 :

<iframe src="https://example.com" allow="geolocation"></iframe> 

는 출처 간 iframe을 하고 원하는을 사용하는 웹 사이트의 개발자 인 경우 해당 iframe은 위의 기능 중 하나를 요청/사용할 수있게 계속하려면 iframe을 포함하는 페이지가 으로 변경되어야합니다. 이를 수행하는 가장 간단한 방법은 태그를 으로 수정하여 권한의 이름을 지정하는 allow 속성을 포함시키는 것입니다. 예를 들어, iframe을위한 위치 정보 및 마이크/카메라 있도록 상기 지정 될 다음

<iframe src="https://example.com" allow="geolocation; microphone; camera"></iframe> 

유효한 값을 허용 위해 포함 :

  • 지구 위치
  • 마이크
  • 카메라
  • 미디
  • 암호화 된 미디어

권한을 사용하는 iframe의 최상위 페이지가 인 경우 변경하지 않아도됩니다.

희망이 있습니다.

+0

자세한 답변 해 주셔서 감사합니다. 올바른 경로에있는 것 같습니다. 불행히도 내 문제는 내가 직접 iFrame을 만들지 않는다는 것입니다.이 스크립트는 script.google.com에 의해 자동으로 생성됩니다. 스크립트를 지시해야한다고 생각합니다.google 서비스는 어떻게 든 iFrame이 생성 될 때 allow = "geolocation"을 통합하지만, 이것이 어떻게 수행 될지 확신 할 수 없습니다. ".setXFrameOptionsMode"를 사용하여 교차 원산지 iframe에 대한 권한을 조정할 수 있다는 것을 알고 있습니다. 그러나 이것은 삽입 및 위치 정보 만 허용합니다. – Sarah