我正在尝试使用PDF.js在iframe
内显示pdf。我的pdf不在我的本地目录中,它位于NAS中。以下是我如何称呼我的iframe
。
<iframe id="framePDF" name="framePDF" src="http:127.0.0.1/web/viewer.html?file=#path-to-pdf#" frameborder="0" height="500px" width="100%"></iframe>
起初,我尝试仅通过直接从嵌套中调用文件来调用文件,例如//100.100.0.10/folder/pdfname.pdf
。使用此选项将触发错误的请求错误。
然后我尝试通过在路径文件前面添加http://
来命名它,因此添加了http://100.100.0.10/folder/pdfname.pdf
。但这什么也没显示。出现的错误是``检索pdf时出现意外的服务器响应(0)。
我做了研究,并且NAS不支持http://
协议。它使用smb://
,cifs://
或file://
。在调用文件时将http://
更改为file://
将触发CORS策略。
所以另一个想法是通过使用ColdFusion cffile
来获取二进制pdf文件。我认为这可能行得通,但似乎无法做到。我尝试使用cfcontent
打开文件,但是cfcontent
只是强制使用浏览器内置的pdf查看器查看pdf。我希望使用修改后的PDF.js查看器。因此,我在另一页中使用了cfcontent
,并将其链接到我的iframe
。该代码将是这样的:
<iframe id="framePDF" name="framePDF" src="http:127.0.0.1/web/viewer.html?file=www.pdfviewer/pdf" frameborder="0" height="500px" width="100%"></iframe>
这也不起作用。观看者走了,甚至没有显示在屏幕上。
另一个可行的方法是转换pdf文件。由于cffile action="readbinary"
将以二进制格式输出pdf,因此我正在考虑将其转换回并链接到iframe
。但是,我完全不知道如何执行此操作。基于该站点上的其他问题,我实际上可以使用javascript,但是我不知道如何开始。
有人可以指导我吗?