正如你可以看到从这个Bugzilla的线程(和也),Firefox不总是在POST请求发送Origin标.RFC规定不应在某些未定义的"隐私敏感"上下文中发送它.Mozilla 在这里定义了这些上下文.
我想知道的是,这些是Firefox不会发送Origin标头的唯一情况.据我所知它也不会发送它在跨源POST请求(虽然Chrome和IE将),但我无法在文档中确认.它是否在我遗漏的地方列举?
谢谢.
我试图从网络工作者内部的服务器获取数据。但每次在开发工具中我都会遇到同样的错误。
Uncaught (in promise) TypeError: Failed to execute 'fetch' on 'WorkerGlobalScope': Failed to parse URL from /api/books
Run Code Online (Sandbox Code Playgroud)
我看到了 这个关于服务人员的答案,但它对我不起作用。
WebWorker文件代码!
// data-handling.web-worker.js
const workercode = () => {
onmessage = async e => {
const res = await fetch('/api/books');
postMessage(res);
}
};
let code = workercode.toString();
code = code.substring(code.indexOf('{')+1, code.lastIndexOf('}'));
const blob = new Blob([code], {type: 'application/javascript'});
const worker_script = URL.createObjectURL(blob);
export default worker_script;
Run Code Online (Sandbox Code Playgroud)
在 React 组件中导入。
import data_handling_worker from "./data-handling.web-worker";
const dataHandlingWorker = new Worker(data_handling_worker);
Run Code Online (Sandbox Code Playgroud)
在钩子内运行并发布消息!
const [searchQuery, …Run Code Online (Sandbox Code Playgroud)