【http/https 资源文件预览】如果你的项目需要接入文件预览项目,达到对docx、excel、ppt、jpg等文件的预览效果,那么通过在你的项目中加入下面的代码就可以成功实现:

var url = 'https://cdn.nodjoy.com/temp/test.xlsx'; //要预览文件的访问地址
window.open('https://view.nodjoy.com/onlinePreview?url='+encodeURIComponent(base64Encode(url)));


【HTML示例】

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Preview</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/Base64/1.2.0/base64.min.js"></script>
    </head>
    <body>
        <button onclick="openFile()">Open</button>
    </body>
    <script type="text/javascript">
        function openFile() {
            var url = "https://cdn.nodjoy.com/temp/test.xlsx"; //要预览文件的访问地址
            window.open("https://view.nodjoy.com/onlinePreview?url=" + encodeURIComponent(btoa(url)));
        }
    </script>
    </html>


【http/https 流资源文件预览】很多系统内不是直接暴露文件下载地址,而是请求通过id、code等参数到通过统一的接口,后端通过id或code等参数定位文件,再通过OutputStream输出下载,此时下载url是不带文件后缀名的,预览时需要拿到文件名,传一个参数fullfilename=xxx.xxx来指定文件名,示例如下

var originUrl = 'https://127.0.0.1:8080/filedownload?fileId=1'; //要预览文件的访问地址
var previewUrl = originUrl + '&fullfilename=test.txt'
window.open('https://view.nodjoy.com/onlinePreview?url='+encodeURIComponent(Base64.encode(previewUrl)));


【ftp 资源文件预览】如果要预览的FTP url是可以匿名访问的(不需要用户名密码),则可以直接通过下载url预览,示例如下

var url = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
window.open('https://view.nodjoy.com/onlinePreview?url='+encodeURIComponent(Base64.encode(url)));


【ftp 加密资源文件预览】如果 FTP 需要认证访问服,可以通过在 url 中加入用户名密码等参数预览,示例如下

var originUrl = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
var previewUrl = originUrl + '?ftp.username=xx&ftp.password=xx&ftp.control.encoding=xx';
window.open('https://view.nodjoy.com/onlinePreview?url='+encodeURIComponent(Base64.encode(previewUrl)));