首页  >  文章  >  web前端  >  在 Fetch API 中使用不透明响应时有哪些限制和注意事项?

在 Fetch API 中使用不透明响应时有哪些限制和注意事项?

Susan Sarandon
Susan Sarandon原创
2024-10-22 16:49:02435浏览

What are the Limitations and Considerations When Using Opaque Responses in the Fetch API?

Fetch API 中不透明响应的限制

Fetch API 中定义的不透明响应源于不使用 CORS 的跨源请求(跨源资源共享)启用,对其使用施加了一定的限制。

访问限制:

首先,不透明的响应无法通过响应属性揭示有意义的详细信息,例如headers 或 Body 方法,由于其黑盒性质。

用作页面资源:

不透明响应可作为网页上特定元素的有效资源,其中非- 允许跨域资源CORS。根据 Mozilla 开发者网络文档,兼容元素包括:

  • <script></script>
  • 在 Fetch API 中使用不透明响应时有哪些限制和注意事项? 、 和

但是,它们不适合字体资源。请查阅相关规范以确定每种资源类型的兼容性。

缓存存储 API 交互:

在缓存存储 API 中使用不透明响应的潜在陷阱是其状态代码无论请求结果如何,始终设置为 0。由于缓存存储 API 拒绝具有非 2XX 状态代码的响应,因此无法直接通过 add() 或 addAll() 添加不透明响应。

解决方法是显式获取并使用 put() 方法以及不透明响应,承认缓存的响应可能代表服务器错误的风险。

navigator.storage API 含义:

为了防止跨域信息泄漏,在计算存储配额限制时,不透明响应会产生大量的大小填充。在 Google Chrome 等浏览器中,每个缓存的不透明响应至少为整体存储使用贡献 7 MB 的空间。在管理不透明响应的缓存容量时应考虑此因素。

以上是在 Fetch API 中使用不透明响应时有哪些限制和注意事项?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn