我想设置标题Cross-Origin-Embedder-Policy: require-corp
和Cross-Origin-Opener-Policy: same-origin
所以我可以启用SharedArrayBuffer
,所以我可以使用https://github.com/ffmpegwasm/ffmpeg.wasm
我在firebase.json
中设置了这些,但是console.log(crossOriginIsolated)
产生false
,和任何试图使用FFmpeg错误与SharedArrayBuffer is not defined
。仿真器和部署的站点都会发生这种情况。
我正在加载ffmpegwasm
从jsdeliver与<script src="https://cdn.jsdelivr.net/npm/@ffmpeg/ffmpeg@0.10.1/dist/ffmpeg.min.js" crossorigin="true"></script>
这是我完整的firebase.json
(只是一个简单的演示项目),底部有标题:
{
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
},
"emulators": {
"functions": {
"port": 5001
},
"hosting": {
"port": 5000
},
"ui": {
"enabled": true
}
},
"headers": [
{
"source": "**",
"headers": [
{
"key": "Cross-Origin-Embedder-Policy",
"value": "require-corp"
},
{
"key": "Cross-Origin-Opener-Policy",
"value": "same-origin"
}
]
}
]
}
我做错了什么?谢谢!
我已经设法通过将"source": "**"
部分更改为"regex": "/.*"
来解决问题。您可以尝试不同的模式来将标题应用于您想要修改的确切页面路径。