设置Nodejs WebRTC 视频通话,Turn/ICE 失败,CORS 被阻塞
Setting up Nodejs WebRTC Video call, and Turn / ICE fails, CORS is blocked
我实际上已经遵循了这个 WebRTC 代码实验室 (https://codelabs.developers.google.com/codelabs/webrtc-web/#7),但是在需要连接到 ICE 服务器时卡住了。
基本代码在这里:
main.js
var pcConfig = {
'iceServers': [{
'url': 'stun:stun.l.google.com:19302'
}
[...]
if (location.hostname !== 'localhost') {
requestTurn(
'https://computeengineondemand.appspot.com/turn?username=41784574&key=4080218913');}
通常我会收到错误消息:“ICE 失败”,或者
“Cross-Origin 请求被阻止:同源策略不允许读取位于 https://computeengineondemand.appspot.com/turn?username=41784574&key=4080218913 的远程资源。 (原因:缺少 CORS header ‘Access-Control-Allow-Origin’)。”
按照后面那个,我启用了
“A2enmod headers” 并将其设置为 apache.conf “Header 始终设置 Access-Control-Allow-Origin “*” “
问题依然存在。我的 STUN 服务器是“'url': 'stun:stun.l.google.com:19302'”
据我了解,STUN 应该在 80% 的时间内工作。但这永远行不通。因此,即使 TURNserver 不再工作,它有时也应该与 STUN 连接?
我实际上已经遵循了这个 WebRTC 代码实验室 (https://codelabs.developers.google.com/codelabs/webrtc-web/#7),但是在需要连接到 ICE 服务器时卡住了。
基本代码在这里:
main.js
var pcConfig = {
'iceServers': [{
'url': 'stun:stun.l.google.com:19302'
}
[...]
if (location.hostname !== 'localhost') {
requestTurn(
'https://computeengineondemand.appspot.com/turn?username=41784574&key=4080218913');}
通常我会收到错误消息:“ICE 失败”,或者 “Cross-Origin 请求被阻止:同源策略不允许读取位于 https://computeengineondemand.appspot.com/turn?username=41784574&key=4080218913 的远程资源。 (原因:缺少 CORS header ‘Access-Control-Allow-Origin’)。”
按照后面那个,我启用了 “A2enmod headers” 并将其设置为 apache.conf “Header 始终设置 Access-Control-Allow-Origin “*” “
问题依然存在。我的 STUN 服务器是“'url': 'stun:stun.l.google.com:19302'” 据我了解,STUN 应该在 80% 的时间内工作。但这永远行不通。因此,即使 TURNserver 不再工作,它有时也应该与 STUN 连接?