小编Tom*_*Tom的帖子

从网络工作者获取不发送(相同)来源

我正在尝试创建一个 Web Worker 来存储访问令牌并处理 API 调用。我想做的第一件事是从 Web Worker 发出获取请求以获取访问令牌。

用户使用cookies;httpOnly 和 SameSite 已启用,但尚未安全,因为我在 http 上本地运行它。该 cookie 是存储令牌或令牌身份的位置。

我的 api 中有一个端点,我想通过地址来获取访问令牌。然后我可以用它来处理所需的资源。令牌保留在 Web Worker 中并且不会暴露。

我有一个来自该 Web Worker 的 Web Worker(采用 Base64 字符串),我想到达端点以获取访问令牌。我用 fetch 来做到这一点。但是,当我想发送凭据时。CORS 不能设置为“*”。我可以将我的网站的 url(在本例中为 localhost)指定为服务器中的源。

在我的网络工作者中:

const tryFetch = await fetch(authUrl, {
  credentials: "include",
});
Run Code Online (Sandbox Code Playgroud)

然而,传递给服务器的源似乎是“null”。有没有办法解决这个问题或者我正在尝试错误的东西?

Access to fetch at 'http://localhost:3000/api/auth' from origin 'null' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header has a value 'http://localhost:3000' that is not equal to the supplied origin. Have the server send …
Run Code Online (Sandbox Code Playgroud)

javascript fetch web-worker cors web

3
推荐指数
1
解决办法
1839
查看次数

标签 统计

cors ×1

fetch ×1

javascript ×1

web ×1

web-worker ×1