Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 惰性负载:;如何使用pdf.js将多个pdf文档显示为一个文档?_Javascript_Java_Range_Pdf.js - Fatal编程技术网

Javascript 惰性负载:;如何使用pdf.js将多个pdf文档显示为一个文档?

Javascript 惰性负载:;如何使用pdf.js将多个pdf文档显示为一个文档?,javascript,java,range,pdf.js,Javascript,Java,Range,Pdf.js,我的目的是在惰性模式下使用pdf.js显示pdf,我有两个选择: 使用disableRange=false 在Nginx中使用url时效果很好,但当我使用java servlet url:/dowload/fileid/123时,它不会通过206部分内容(范围请求)加载,而是通过200加载,然后在查看器中查看 类刮擦{ 公共静态void main(字符串[]args){ 公共无效下载(字符串标识号、HttpServletRequest请求、HttpServletResponse响应){ File

我的目的是在惰性模式下使用pdf.js显示pdf,我有两个选择:

  • 使用disableRange=false 在Nginx中使用url时效果很好,但当我使用java servlet url:/dowload/fileid/123时,它不会通过206部分内容(范围请求)加载,而是通过200加载,然后在查看器中查看
  • 类刮擦{
    公共静态void main(字符串[]args){
    公共无效下载(字符串标识号、HttpServletRequest请求、HttpServletResponse响应){
    File File=getFileFromServer(identNo);
    BufferedInputStream bis=null;
    OutputStream os=null;
    BufferedOutputStream bos=null;
    InputStream=null;
    试一试{
    is=新文件输入流(文件);
    bis=新的BufferedInputStream(is);
    os=response.getOutputStream();
    bos=新的缓冲输出流(os);
    int起始字节、endByte、totalByte;
    if(request!=null&&request.getHeader(“范围”)!=null){
    String[]range=request.getHeader(“range”).replaceAll([^0-9\\\-],“”)。split(“”);
    totalByte=is.available();
    startByte=Integer.parseInt(范围[0]);
    如果(range.length>1){
    endByte=Integer.parseInt(范围[1]);
    }否则{
    endByte=总字节-1;
    }
    答复:setStatus(206);
    }否则{
    totalByte=is.available();
    起始字节=0;
    endByte=总字节-1;
    setHeader(“接受范围”、“字节”);
    答复:setStatus(200);
    }
    int length=endByte-startByte+1;
    setHeader(“接受范围”、“字节”);
    setHeader(“内容范围”,“字节数”+起始字节数+“-”+结束字节数+“/”+总字节数);
    setContentType(“内容类型:应用程序/八位字节流”);
    response.setContentLength(长度);
    二.跳过(起始字节);
    int len=0;
    字节[]buff=新字节[1024*64];
    而((len=bis.read(buff,0,buff.length))!=-1){
    如果(长度)
    
  • js,设置参数:“disableAutoFetch”:true,“disableStream”:true
  • 服务器支持接受范围,范围 现在,服务器上可以看到pdf.js,它只获取页面中的数据