Skip to content

Commit e26225c

Browse files
save file
1 parent 5c1141c commit e26225c

File tree

1 file changed

+58
-7
lines changed

1 file changed

+58
-7
lines changed

utils/webrtc/file-transfer-http/file-transfer-http.html

Lines changed: 58 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -525,16 +525,33 @@ <h3>
525525

526526
btn.download = async function(){
527527

528-
var jszip = await import('https://cdn.jsdelivr.net/npm/jszip/+esm');
528+
var err;
529+
try{
530+
531+
var jszip = await import('https://cdn.jsdelivr.net/npm/jszip/+esm');
532+
533+
}//try
534+
catch(err2){
535+
536+
err = err2;
537+
538+
}//catcg
539+
if(err){
540+
var error = err.toString();
541+
log.red(`failed to load zip module : ${error}`);
542+
return;
543+
}
544+
529545
jszip = jszip.default;
530546

547+
531548
var root = `webrtc-file-transfer-http-server`;
532549

533550
var zip = new jszip();
534551
zip.folder(root);
535-
536-
var res = await fetch('https://raw.githubusercontent.com/javascript-2020/code/main/nodejs/server/webrtc-file-transfer-http/webrtc-file-transfer-http-server.js');
537-
var blob = await res.blob();
552+
553+
var {blob,error} = await get('code','nodejs/server/webrtc-file-transfer-http/webrtc-file-transfer-http-server.js');
554+
if(error)return;
538555
zip.file(`${root}/webrtc-file-transfer-http-server.js`,blob);
539556

540557
zip.folder(`${root}/node_modules`);
@@ -543,11 +560,12 @@ <h3>
543560
await Promise.all(
544561
libs.map(async path=>{
545562

546-
var fn = path.split('/').at(-1);
547-
var blob = await fetch(`https://raw.githubusercontent.com/javascript-2020/libs/main/${path}`).then(res=>res.blob());
563+
var fn = path.split('/').at(-1);
564+
var {blob,error} = await get('libs',path);
565+
if(error)return;
548566
zip.file(`${root}/node_modules/${fn}`,blob);
549567

550-
});
568+
})
551569
);
552570

553571

@@ -559,6 +577,39 @@ <h3>
559577
a.href = url;
560578
a.click();
561579

580+
581+
async function get(repo,path){
582+
583+
var url = `https://raw.githubusercontent.com/javascript-2020/${repo}/main/${path}`;
584+
585+
var err;
586+
try{
587+
588+
var res = await fetch(url);
589+
590+
}//try
591+
catch(err2){
592+
593+
err = err2;
594+
595+
}//catcg
596+
if(err){
597+
var error = err.toString();
598+
log.red(error);
599+
return {error};
600+
}
601+
if(!res.ok){
602+
var txt = await res.text();
603+
var error = res.status+' '+res.statusText;
604+
log.red(error);
605+
return {error};
606+
}
607+
608+
var blob = await res.blob();
609+
return {blob};
610+
611+
}//get
612+
562613
}//download
563614

564615

0 commit comments

Comments
 (0)