WebRTC環境搭建 | 掘金技術徵文

Web環境搭建

  • WebRCT在瀏覽器使用場景較多,所以基於原生的js編寫更爲順手,因此使用node.js做爲Web服務器。
  • node.js版本升級迭代較爲快速,版本較多,所以使用多版本管理工具nvm

安裝nvm

wget https://github.com/creationix/nvm/archive/v0.34.0.tar.gz
./install.sh //獲取安裝腳本
source ~/.bash_profile //設置環境變量
nvm --version //查看版本
nvm list-remote //列出全部可安裝的版本
nvm install v10.15.3 //安裝相應的版本,這裏安裝的是v10.15.3
nvm ls //查看一下你當前已經安裝的版本
nvm use v10.15 3 //切換版本
nvm alias default //設置默認版本
複製代碼

安裝第三模塊

  • Express提供了更好的Web服務功能
mkdir web
cd web
npm install express
複製代碼

開啓HTTPS

  • 使用WebRTC須要調用多媒體攝像,須要更加嚴格的傳輸,所以必須使用HTTPS

申請證書

  • 剛購買的域名會免費贈送一年https證書
  • 進入證書控制檯首頁
  • 申請驗證
  • 下載證書

解析域名

  • 由於要解析IP,因此選擇A記錄類型
  • 填寫申請證書寫的二級域名
  • 記錄值爲服務器主機IP

上傳證書

//上傳證書
scp 2060073_juejin.shuxiaoda.com_other.zip root@shuxiaoda.com:/root/web/cert/
//進入目錄
cd /root/web/cert
//安裝unzip
yum install unzip
//解壓證書
unzip 2060073_juejin.shuxiaoda.com_other.zip 
複製代碼

開啓服務

  • 建立index.js
var https = require('https'); //https模塊
var fs = require('fs'); //讀取文件模塊
var express = require('express'); //開啓web服務模塊
//讀取證書
options = {
    key : fs.readFileSync('/cert/2016927_test.shuxiaoda.com.key'),
    cert : fs.readFileSync('/cert/2016927_test.shuxiaoda.com.pem')
}
var https_server = https.createServer(options,app);
https_server.listen(443,'0.0.0.0'); //監聽https默認443端口,綁定全部網卡
複製代碼

測試WebRTC

  • 在web目錄下建立public文件夾
  • 在public下建立index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>測試WebRTC</title>
</head>
<body>
    <script>
        //開啓音頻攝像頭權限
       navigator.mediaDevices.getUserMedia({audio: true, video: true});
    </script>
</body>
</html>
複製代碼
  • 返回web目錄下,啓動index.js
  • 在瀏覽器就你看到WebRTC調用攝像頭權限了

相關文章
相關標籤/搜索