Google 致力于为黑人社区推动种族平等。查看具体行动
此页面由 Cloud Translation API 翻译。
Switch to English

TURN服务器

为了使大多数WebRTC应用程序正常运行,需要服务器来中继对等方之间的流量,因为在客户端之间通常不可能使用直接套接字(除非它们驻留在同一本地网络上)。解决此问题的常用方法是使用TURN服务器。该术语代表使用中继NAT进行遍历,它是用于中继网络流量的协议。

当前有TURN服务器在线可用的几种选项,既可以作为自托管应用程序(如开源COTURN项目),也可以作为云提供的服务。

在线拥有TURN服务器后,您所需RTCConfiguration为客户端应用程序使用它提供正确的RTCConfiguration 。以下代码段说明了RTCPeerConnection的示例配置,其中TURN服务器的主机my-turn-server.mycompany.com并在端口19403上运行。配置对象还支持usernamecredentials属性,以保护对服务器的访问。连接到TURN服务器时,这些是必需的。

const iceConfiguration = {
    iceServers: [
        {
            urls: 'turn:my-turn-server.mycompany.com:19403',
            username: 'optional-username',
            credentials: 'auth-token'
        }
    ]
}

const peerConnection = new RTCPeerConnection(iceConfiguration);