首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在本地Angular开发服务器中设置标头

在本地Angular开发服务器中设置标头
EN

Stack Overflow用户
提问于 2020-12-08 06:23:58
回答 1查看 359关注 0票数 0

我的应用程序是一个当前在本地主机上运行的客户端应用程序。我正在尝试使用一个需要访问SharedArrayBuffer的Wasm库。它在Chrome和Edge上都能工作,但是火狐似乎有限制,导致了一个错误:ReferenceError: SharedArrayBuffer is not defined

According to MDN Firefox要求设置以下标头:

代码语言:javascript
复制
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp

我的应用程序在localhost:4200上运行。我正在尝试让ng serve开发服务器设置标头。我曾尝试使用以下代码完成此操作:

代码语言:javascript
复制
// proxy.conf.js
module.exports = {
  "/": {
    logLevel: "debug",
    target: "http://localhost:4200",
    bypass: (req, res, proxyOptions) => {
      res.setHeader("Cross-Origin-Opener-Policy", "same-origin");
      res.setHeader("Cross-Origin-Embedder-Policy", "require-corp");
    },
  },
};

然而,这并不起作用。有没有一种方法可以用Angular服务器设置头文件,或者另一种解决方法?

EN

回答 1

Stack Overflow用户

发布于 2021-04-07 21:07:21

您可以将COEP和COOP头添加到angular.json中的Angular Dev-server来解决此问题。

例如,

代码语言:javascript
复制
"serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
            "browserTarget": "web-ui:build",
            "proxyConfig": "proxy.conf.json",
            "headers": {
              "Cross-Origin-Opener-Policy":"same-origin",
              "Cross-Origin-Embedder-Policy":"require-corp"
            }
           }
          }

这应该会将标题"Cross-Origin-Opener-Policy“和"Cross-Origin-Embedder-Policy”都设置为适当的值。运行ng serve以使这些更改反映在响应中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65190345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档