diff --git a/SrcJyAlist.js b/SrcJyAlist.js index 65854296..e15861ed 100644 --- a/SrcJyAlist.js +++ b/SrcJyAlist.js @@ -946,49 +946,52 @@ function getAliUrl(share_id, file_id, alitoken) { let heads = []; let playUrlList = aliSharePlayUrl(share_id, file_id, alitoken) || []; - playUrlList.forEach((item,i) => { - let u = startProxyServer($.toString((aliSharePlayUrl,line,share_id,file_id,alitoken) => { - let url = base64Decode(MY_PARAMS.url); - //let rurl = JSON.parse(request(url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; - //log("我在代理" + rurl); - //let f = cacheM3u8(rurl, {headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); - let id = file_id; - let time = 60000; - - registerTask(id, time, $.toString((aliSharePlayUrl,line,share_id,file_id,alitoken)=> { - log('执行了定时'); - let f; - let playUrlList = aliSharePlayUrl(share_id, file_id, alitoken) || []; - playUrlList.forEach((item) => { - if(item.template_id == line){ - let rurl = JSON.parse(request(item.url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; - f = cacheM3u8(rurl, {headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); - } - }) - log('定时执行,获取新的播放地址>'+f) ; - }, aliSharePlayUrl,line,share_id,file_id,alitoken)); - - //log(f) - //return readFile(f.split("##")[0]); - return "hiker://files/Documents/cache/video.m3u8"; - },aliSharePlayUrl,item.template_id,share_id,file_id,alitoken)); - if(i==0){ - //log(item.url) - //let rurl = JSON.parse(request(item.url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; - urls.push(u + "?url=" + base64Encode(item.url) + "#.m3u8"); - - //let url = cacheM3u8(item.url,{headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); - //urls.push(url + "#isVideo=true##pre#"); - names.push(transcoding[item.template_id] ? transcoding[item.template_id] : item.template_height); - heads.push({ 'Referer': 'https://www.aliyundrive.com/' }); - } - }) - - return { - urls: urls, - names: names, - headers: heads - }; + if(playUrlList.length>0){ + playUrlList.forEach((item,i) => { + let u = startProxyServer($.toString((aliSharePlayUrl,line,share_id,file_id,alitoken) => { + let url = base64Decode(MY_PARAMS.url); + //let rurl = JSON.parse(request(url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; + //log("我在代理" + rurl); + //let f = cacheM3u8(rurl, {headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); + let id = file_id; + let time = 60000; + registerTask(id, time, $.toString((aliSharePlayUrl,line,share_id,file_id,alitoken)=> { + log('执行了定时'); + let f; + let playUrlList = aliSharePlayUrl(share_id, file_id, alitoken) || []; + playUrlList.forEach((item) => { + if(item.template_id == line){ + let rurl = JSON.parse(request(item.url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; + f = cacheM3u8(rurl, {headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); + } + }) + log('定时执行,获取新的播放地址>'+f) ; + }, aliSharePlayUrl,line,share_id,file_id,alitoken)); + + //log(f) + //return readFile(f.split("##")[0]); + return readFile("hiker://files/Documents/cache/video.m3u8"); + },aliSharePlayUrl,item.template_id,share_id,file_id,alitoken)); + if(i==0){ + //log(item.url) + //let rurl = JSON.parse(request(item.url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0]; + urls.push(u + "?url=" + base64Encode(item.url) + "#.m3u8"); + + //let url = cacheM3u8(item.url,{headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000}); + //urls.push(url + "#isVideo=true##pre#"); + names.push(transcoding[item.template_id] ? transcoding[item.template_id] : item.template_height); + heads.push({ 'Referer': 'https://www.aliyundrive.com/' }); + } + }) + return { + urls: urls, + names: names, + headers: heads + }; + }else{ + log('未获取阿里播放地址,建议重进软件再试一次') + return {}; + } } catch (e) { log('获取共享链接播放地址失败>' + e.message); return {};