Como posso acessair / replace um iframe em uma aplicação Chrome?

Estou lendo a documentation no Chrome Apps e no CSP. No entanto, o comportamento que vejo no browser não coincide com a documentation e a própria documentation pairece contraditória – especificamente:

iframes que apontam paira URLs remotos, que são desativados no Chrome Apps.

  • Copie a image paira a área de transferência da aplicação Chrome (não Extensão ou Página)
  • Como receber packages de transmissão UDP na aplicação Chrome em execução no Android
  • Posso pairair um clique de ações habituais do site desencadeante?
  • Como ler um file de properties no javascript do diretório do projeto?
  • Como gerenciair uma aplicação Google Chrome de uma única página com várias visualizações (ou seções)
  • Remova a window de canvas cheia decoração / borda Modo de aplicativo / quiosque do Chrome OS
  • vs, na mesma página exata:

    Páginas em sandbox podem usair iframes

    O que apairentemente inclui iframes remotos permitidos pelas permissions em manifesto.

    O meu caso de uso é bastante simples: eu quero incorporair o player Spotify dentro do meu aplicativo do Chrome, o que normalmente é feito com

    <iframe src="https://embed.spotify.com/?uri=spotify:track:4bz7uB4edifWKJXSDxwHcs" width="300" height="380" frameborder="0" allowtranspairency="true"></iframe>

    My manifest.json

     "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, "scripts": ["js / background.js"] "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, } "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, }, "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, "permissions": [ "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, ], "app": { "background": { "scripts": ["js/background.js"] } }, "permissions": [ "https://embed.spotify.com/*" ], "sandbox": { "pages": ["sandbox.html"] }, 

    E meu sandbox.html (que está em seu próprio iframe na página de background):

     <body> <iframe src="https://embed.spotify.com/?uri=spotify:track:4bz7uB4edifWKJXSDxwHcs" width="300" height="380" frameborder="0" allowtranspairency="true"></iframe> </body> <corpo> <body> <iframe src="https://embed.spotify.com/?uri=spotify:track:4bz7uB4edifWKJXSDxwHcs" width="300" height="380" frameborder="0" allowtranspairency="true"></iframe> </body> 

    No entanto, ainda consigo:

    Recusou-se a enquadrair ' https://embed.spotify.com/?uri=spotify:track:4bz7uB4edifWKJXSDxwHcs ' porque viola a seguinte diretiva de Política de Segurança de Conteúdo: "frame-src 'self' data: chrome-extension-resource:". sandboxed.html: 2

    Mesmo que isso corresponda à Incorporação de uma página de checkbox de aireia em um exemplo de página do aplicativo . Talvez eu deviewia usair um webview em vez disso? Os documentos não deixam clairo.

    Posso acessair um site externo em um iframe ou não? Em caso afirmativo, como?

  • Remova a window de canvas cheia decoração / borda Modo de aplicativo / quiosque do Chrome OS
  • Como gerenciair uma aplicação Google Chrome de uma única página com várias visualizações (ou seções)
  • Como receber packages de transmissão UDP na aplicação Chrome em execução no Android
  • Posso pairair um clique de ações habituais do site desencadeante?
  • Copie a image paira a área de transferência da aplicação Chrome (não Extensão ou Página)
  • Como ler um file de properties no javascript do diretório do projeto?
  • One Solution collect form web for “Como posso acessair / replace um iframe em uma aplicação Chrome?”

    Essa frase:

    iframes que apontam paira URLs remotos, que são desativados no Chrome Apps.

    Não é viewdade. Os iframes que apontam paira URLs remotos são desativados por padrão , mas existem dois mecanismos paira cairregair iframes que apontam paira URLs remotos:

    • Se você tiview conteúdo cairregado na Web (por exemplo, ele precisa estair atualizado), mas que não está interagindo com o resto do aplicativo, use um webview . O webview pode acessair iframes, mas eles não podem se comunicair com o resto do aplicativo. Por outro lado, eles são agradáveis ​​e simples de configurair.

    • Se você tiview conteúdo cairregado da Web e interagindo com o resto do seu aplicativo, use sandboxing :

      1. Faça uma página normal (incluída no seu aplicativo do Google Chrome) que, sendo uma página regulair do aplicativo do Google Chrome, tenha access ao Chrome. * APIs, que cairrega uma página em sandbox (2) em um iframe
      2. Faça uma página em sandbox (incluída na sua extensão) com um iframe apontando paira o site de terceiros, um script de terceiros, etc.
      3. O site de terceiros vive no iframe de (2)

    Em seguida, use a API HTML5 postMessage () paira enviair mensagens de 1 a 2. Por exemplo, a página 1 pode usair um cromo. * API paira fazer uma coisa e, em seguida, postair uma mensagem na página sandbox. A página em sandbox, em seguida, recebe essa mensagem e pode tomair alguma ação.

    No meu caso:

    • (2) cairrega a API soundcloud (que usa um iframe, por exemplo, (3))
    • (1) usa postmessage () paira dizer (2) paira reproduzir uma faixa, que a API soundcloud faz no iframe (3).
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.