为什么我刷新时Safari执行两次fetch()?

时间:2018-08-16 02:15:39

标签: javascript node.js safari glitch-framework

我在Glitch上摆弄HTML / JS。好有趣!我开始使用fetch API进行调用,以便可以与SQLite数据库进行交互,并且在我啄食时发现了一些奇怪的事情。我已经登录了我的方法,并且两次被调用。

所以我做了一个项目来演示:http://safari-fetchfetch.glitch.me

您可以对其进行拨叉/拨动以查看代码。每次调用端点/fetch时,它都会记录服务器端。我希望每个访问都发出一个日志消息。

这是在Safari的 first 加载时发生的。但是,在每次后续加载时,服务器都会将两个命中记录到端点。为什么?我已经在Chrome浏览器中尝试过,无法复制它。在Safari私人浏览实例中似乎没有发生。

我尝试记录请求的更多部分,但是看起来什么都没有。我看过一些页面,说它可能与CORS有关,但这是同源的,对吗?即使我明确设置了使用同源策略的选项,它也会继续。当我使用Safari的检查器查看该请求的标头时,我看不到似乎与CORS相关联的内容。

发生了什么事?

1 个答案:

答案 0 :(得分:0)

可以是this bug

(我知道,但是对于像我这样的人,他们的搜索找到了这样的问题,但没有找到其他相关页面。)