2016-11-30 4 views
0

저는 WebOS와 비슷한 것을 구현하려고하는 프로젝트에서 일하고 있습니다. 여러 사람들이 을 사용하여 외부 응용 프로그램을로드하는 아이디어를 제공하고 있습니다.<iframe>이 WebOS 용 외부 앱을 구현하는 유일한 방법입니까?

검색 결과 : https://osjsv2.0o.no/이 프로젝트는 (많은 사용자가 DOM을 데모에서 보면서 그것을 보았습니다).

그러나 크로스 도메인이 금지되어있을 때만 ([parent.document]에 액세스하지 않음) 이해하기 때문에이 아이디어는 다소 나빴습니다.

상위 문서에서 액세스 할 수있는 일종의 JavaScript API가 있지만 허용되지 않는 교차 도메인 옵션()으로 인해 액세스 할 수없는 경우이 JS API를 사용할 수 없습니다.

Web-Workers을 통해 부모 DOM (캡슐화) 및 메시징을 가상화하는 방법이 아니라 구조화 된 복제 알고리즘을 사용하면 더 영리하고 안전한 방법이 될 것입니다.

또한 보안에 관해 언급 할 필요가 있습니다. 과 상위 문서 사이에 도메인 간 통신이 허용되는 경우 가능한 공격자가 앱에 JSON을로드 할 수 있습니다. DOM DOM을 손상 시키거나 입력 또는 기타 정보에 대한 스파이 물건을 만듭니다.

따라서 주요 질문은 다음과 같습니다. 은 안전한가요? 2016 (곧 2017) 년에 웹 응용 프로그램 (예 : OS.js)에 외부 앱을로드하는 유일한 방법입니까?

감사

답변

0

내가 아닌 웹 OS 사용자입니다,하지만 액세스를 제공하는 경우, fetch()ServiceWorker 스크립트를 사용하면 CORS 제한에서 벗어나 할 수 있습니다. 나중에 실행되는 코드에 대한 컨텍스트를 구성 할 수있는 jailed과 같은 일부 샌드 박스에서 스크립트를 평가해야합니다.