UNPKG

@jxstjh/jhvideo

Version:

HTML5 jhvideo base on MPEG2-TS Stream Player

48 lines 1.56 kB
import httpClient from '../core/httpClient'; var keepAlive$; // 定时器 var keepAliveFaildCount = 0; // 错误计数器 function keepAliveWoker(token, tokenId, url, aisleId) { var body = { tokenId: tokenId, aisleId: aisleId }; var headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': 'Bearer ' + token }; httpClient.ajax('post', url, body, headers).then(function (res) { if (res.code === 0 && res.data.code === 200) { keepAliveFaildCount = 0; } else { keepAliveFaildCount += 1; if (keepAliveFaildCount > 3) { postMessage('KEEPALIVE_ERROR'); } } }).catch(function (err) { keepAliveFaildCount += 1; if (keepAliveFaildCount > 3) { postMessage('KEEPALIVE_ERROR'); } }); } onmessage = function (event) { var aisleId = event.data.aisleId; var arr = aisleId.split('#'); if (arr.length > 1) { aisleId = arr[0]; } switch (event.data.cmd) { case 'START_KEEPALIVE': var tokenId = event.data.tokenId; var url = event.data.url; var token = event.data.token; keepAliveFaildCount = 0; keepAlive$ = setInterval(keepAliveWoker.bind(null, token, tokenId, url, aisleId), 8 * 1000); break; case 'DESTROY_KEEPALIVE': clearInterval(keepAlive$); break; default: break; } }; //# sourceMappingURL=keepAlive.worker.js.map