跨域资源共享 (CORS)

利用此功能,VRED 上运行的 Web 应用程序可访问来自其他网站的内容以执行某些操作,例如播放 YouTube 视频。

Web 界面首选项中添加了包含以下选项的跨域资源共享 (CORS) 部分。

Web 界面首选项中的 CORS

启用跨域请求

支持从提供第一个资源的域之外的另一个域请求网页上的资源。

允许的域

仅当启用了“启用跨域请求”时可用。

输入要通过跨域请求共享在 Web 界面中显示的 URL 域。

适用于 VREDServer 的跨域资源共享 (CORS)

vrWebInterface.cpp 中的某些请求中,也为 VREDServer 实现了跨域资源共享 (CORS)。

CORS 的 HTTP 标头

下面是跨域请求共享的 HTTP 标头:

预检 (OPTIONS)

Access-Control-Allow-Origin:*

Access-Control-Allow-Methods:GET,HEAD,PUT,PATCH,POST,DELETE

Access-Control-Allow-Headers:content-type

实际请求 (GET)

Access-Control-Allow-Origin:*

工作原理

如果主机或端口与运行当前网站/Web 应用程序的主机或端口不同,并且 Web 应用程序尝试通过 JavaScript 向后一种情况的主机发送请求,该主机将同意该请求。否则,浏览器将不发送请求。

  1. 浏览器在预检请求中通过 HTTP 方法 OPTIONS 查询不同的主机或端口(如果该主机同意)。如果响应中包含如上文预检中所示的 HTTP 标头,则将尝试发送实际请求。

  2. 浏览器发送实际请求。同样,也必须包含如上文实际请求中所示的 HTTP 标头。必须设置此内容;否则,浏览器将无法处理响应。

有关标头及其工作方式的其他信息,请访问 Access-Control-Allow-Origin跨域资源共享 (CORS)