oddengine / odd.js

This is not only an HTML5 FLV Player, but also a WebRTC, IM SDK, and FC/NES emulator.
https://oddengine.com
BSD 3-Clause "New" or "Revised" License
180 stars 65 forks source link

请问怎么才能支持跨域 #7

Closed xia-chu closed 3 years ago

xia-chu commented 4 years ago

怎么设置HTTP 头中的Origin字段?

oddengine commented 4 years ago

Origin头是浏览器出于安全考虑,根据url自动设置的,百度“http cors”或看这里: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS

跨域的配置在loader.mode这里设置: player.setup({ ... loader: { ... mode: 'cors' }, }); 其他有关xhr/fetch的配置都可以设置,查看playease.io.js里面,对照这里: https://developer.mozilla.org/zh-CN/docs/Web/API/Fetch_API/Using_Fetch

另外,跨域问题是需要服务器配合的,不是客户端说了就算。如果浏览器检测到资源里面url的域名与本页面的域名不一致,就会在头里面用Host和Origin标注,服务器需要响应Access-Control-Allow-Origin头,然后浏览器会根据这个值去判断是否“允许跨域",*表示允许所有域名。