new FunctionWebワーカーで作業するのに問題があります。Webワーカーを生成するHTMLページがあります。このWebワーカーは、を介してコードを実行しますnew Function(str)。これをパッケージ化されたChromeアプリで使用しようとしています。このアプリでevalは、マニフェストにサンドボックス化されたページとして明示的にリストされるようなコードを使用するページが必要です。
現在、2つのオプションがあります。
- サンドボックス化するページをリストしてください。そうすれば、を使用できます
new Functionが、要求を行うことができないため、Webワーカーを生成できません(サンドボックス化されたページには固有のオリジンがあります)。new Worker(...)をスローしSECURITY_ERRます。new Functionサンドボックスで動作しますnew Worker固有の起源のためにサンドボックスで失敗する
- サンドボックス化するページをリストしないでください。そうすれば、Webワーカーを生成できますが、
new Functionサンドボックス化されていないため、ワーカーは使用できません。それの使用について不平をnew Function(...)投げます。EvalErrornew Functionevalのようなものであるために非サンドボックスで失敗するnew Workerサンドボックス以外で動作します
私のCSPは次のとおりです。
sandbox allow-scripts script-src 'self' 'unsafe-eval'; object-src 'self'
new FunctionWebワーカーで作業するにはどうすればよいですか?