gpt4 book ai didi

javascript - CORS 相对于跨域消息传递的优势

转载 作者:数据小太阳 更新时间:2023-10-29 05:53:10 26 4
gpt4 key购买 nike

CORS和跨域消息在我看来是一样的:它们允许跨域通信。

是否有任何理由使用一个与另一个?

最佳答案

CORS 用于 ajax 请求或 flash 通常不允许的 flash 请求。例如,如果域 x 没有跨域策略,你通过 flash 从那里检索一个 mp3 文件进行播放,flash 将不允许你读取 mp3 文件的 id3 标签。对于 ajax,如果目标服务器没有允许您的域发出请求的跨域策略,您将无法发出请求。

跨域消息传递允许您与来自不同来源的文档中的 iframe 进行通信。例如,如果您有 youtube 视频 iframe,您可以向该 iframe 传递一条消息以更改音量。通常无法进行通信,因为 iframe 的来源不同,因此您无法以编程方式对 youtube iframe 执行任何操作。

使用一个或另一个的原因现在应该很清楚了。当您想要与位于 iframe 内但不在同一来源的应用程序通信时,CORS 允许您从另一个来源请求数据,同时在主窗口和 iframe 之间传递消息。

一个实际的例子:

1.您有一个带有 YouTube 播放器的 iframe。

2.您请求从 youtube 数据 api(CORS,可以是 JSONP、XHR 或其他)播放一些视频。

3.您现在将跨域消息传递给 iframe 以开始播放您在步骤 #2 中请求的任何视频

关于javascript - CORS 相对于跨域消息传递的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8186581/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com