aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/api/webrtc_api/adapter.js
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/zh-cn/web/api/webrtc_api/adapter.js
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip
initial commit
Diffstat (limited to 'files/zh-cn/web/api/webrtc_api/adapter.js')
-rw-r--r--files/zh-cn/web/api/webrtc_api/adapter.js/index.html40
1 files changed, 40 insertions, 0 deletions
diff --git a/files/zh-cn/web/api/webrtc_api/adapter.js/index.html b/files/zh-cn/web/api/webrtc_api/adapter.js/index.html
new file mode 100644
index 0000000000..f09f219b51
--- /dev/null
+++ b/files/zh-cn/web/api/webrtc_api/adapter.js/index.html
@@ -0,0 +1,40 @@
+---
+title: Improving compatibility using WebRTC adapter.js
+slug: Web/API/WebRTC_API/adapter.js
+translation_of: Web/API/WebRTC_API/adapter.js
+---
+<p>{{WebRTCSidebar}}</p>
+
+<p>虽然 WebRTC <a href="http://www.w3.org/TR/webrtc/">规范</a>已经相对健全稳固了,但是并不是所有的浏览器都实现了它所有的功能。除此之外。有些浏览器需要在一些或者所有的 WebRTC API上添加前缀才能正常使用。尽管你可以自己写代码解决这种问题,但是还有一个比较简单的方法。WebRTC 组织在github上提供了一个 <a href="https://github.com/webrtc/adapter/">WebRTC适配器</a>(WebRTC adapter)来解决在不同浏览器上实现 WebRTC 的兼容性问题。这个适配器是一个JavaScript垫片,它可以让你根据 WebRTC 规范描述的那样去写代码,在所有支持 WebRTC的浏览器中不用去写前缀或者其他兼容性解决方法。</p>
+
+<div class="note">
+<p>注意: 由于WebRTC和支持的浏览器中的API的功能和命名在不断变动,推荐使用这个适配器。</p>
+</div>
+
+<p>这个 adapter(适配器)是基于BSD开源协议的。</p>
+
+<h2 id="adapter.js_是干什么的">adapter.js 是干什么的</h2>
+
+<p>对于每个支持 WebRTC 的浏览器的各个版本,adapter.js添加必要的polyfills(填充),使用没有前缀的API,以及使用一些修改让浏览器可以运行根据 WebRTC 规范写的代码。</p>
+
+<p>举个例子,在火狐浏览器版本号38之前,adapter 增加了{{domxref("RTCPeerConnection.urls")}}属性;火狐浏览器并不原生的支持这个属性直到38版本,然而在谷歌浏览器中如果API不支持{{jsxref("Promise")}} 就添加支持。这只是一些例子;当然还有其他措施来实现这种统一API。</p>
+
+<p>WebRTC adapter现在支持火狐、谷歌、和Edge浏览器</p>
+
+<h2 id="使用adapter.js">使用adapter.js</h2>
+
+<p>要使用 adapter.js,你需要在使用 WebRTC APIs 的每个页面都引入 adapter.js :</p>
+
+<ol>
+ <li>从GitHub上下载一个最新<a href="https://github.com/webrtc/adapter/tree/master/release">adapter.js</a>的副本。</li>
+ <li>在你的网站文件目录里添加这个文件(比如在放在scripts目录下)。</li>
+ <li>在你的项目里包含这个文件:&lt;script src="adapter.js"&gt;&lt;/script&gt;</li>
+ <li>写代码,按照 WebRTC APIs 规范去写,知道你的代码应该在所有浏览器上工作。</li>
+ <li>注意,即使有一个像这样优秀的 adapter 并不意味着你不需要在不同的浏览器上测试代码(以及在同一个浏览器中的不同版本)。</li>
+</ol>
+
+<h2 id="相关链接">相关链接</h2>
+
+<ul>
+ <li><a href="https://github.com/webrtc/adapter">The WebRTC adapter project on GitHub</a></li>
+</ul>