PDF.JS 異常處理
標簽:
JavaScript
PDF.js 具体用法前面有写过,今天记录一下异常处理,我的 viewer.html 后面跟着的地址是服务器返回的地址然后用一个 iframe 标签加载,有时可能服务器发生异常,也可能打开瞬间被异地删除,再或者没有网络....
异常处理是在 pdf.js 的源码中增加代码,大约6287行,onStateChange 方法中监听:
onStateChange: function NetworkManger_onStateChange(xhrId, evt){ ... ... ... delete this.pendingRequests[xhrId];/*我是与后台协商,异常返回450,其它返回的状态码还没有增加处理*/if(xhr.status === 0 && this.isHttp) { var eventClick = documet.createEvent('HTMLEvents'); eventClick.initEvent('notNet',false,false); window.dispatchEvent(eventClick); return; }else if(chr.status === 450){ var eventClick = documet.createEvent('HTMLEvents'); eventClick.initEvent('fileErr',false,false); window.dispatchEvent(eventClick); } ... ... ... }
调用 iframe 标签的文件增加监听:
iframe.addEventListener('notNet',function(){ console.log("网络异常") }); iframe.addEventListener('fileErr',function(){ console.log("服务器异常") })
作者:H_婷
链接:https://www.jianshu.com/p/111f8d10ae24
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦