/** * 獲取推流地址 * 如果不傳key和過期時間,將返回不含防盜鏈的url * @param domain 您用來推流的域名 * streamName 您用來區別不同推流地址的唯一流名稱 * key 安全密鑰 * time 過期時間 sample 2016-11-12 12:00:00 * @return String url */
const md5 = require('md5');
function getPushUrl(domain, streamName, key = null, time = null){
var ext_str = '' if(key && time){ // 將結束時間轉換為時間戳,在把10進制轉為16進制,在把字母轉為大寫 var d = new Date(time).valueOf()/1000 var txTime = d.toString(16).toUpperCase() var txSecret = md5(key + streamName + txTime); ext_str = `?txSecret=${txSecret}&txTime=${txTime}` } return "rtmp://"+domain+"/live/"+streamName + (ext_str ? ext_str : ""); } getPushUrl("tui.minsusuan.com","123456","9d4d84dcdc68bcf5d4d918b85d77c37a","2020-02-02 20:08:07");