SharedArrayBuffer是一种JavaScript对象,它允许多个线程以更高效的方式共享内存。但是,在本地主机上使用SharedArrayBuffer可能会遇到问题。一个常见的问题是无法访问SharedArrayBuffer,因为浏览器可能会将其视为潜在的安全风险。
解决方法是启用跨域资源共享(CORS)策略。这可以通过添加以下响应标头来完成:
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: content-type
示例代码如下:
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => {
res.setHeader('Access-Control-Allow-Origin', '*')
res.setHeader('Access-Control-Allow-Headers', 'content-type')
const sab = new SharedArrayBuffer(1024)
res.send('SharedArrayBuffer created')
})
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`)
})
在上面的示例中,我们添加了响应标头来允许跨域资源共享,并在服务器上创建了一个SharedArrayBuffer。现在,我们可以从客户端使用该SharedArrayBuffer了。