通过程序上传了pdf文件到服务器上的minio对象存储中,上传成功也能在minio中查看到,但在浏览器中通过minio资源网址查看pdf文件时,提示未能加载PDF文档。不能正常显示。开始以为是浏览器的PDF插件问题,支持不够好,于是找了些JS插件,如PDFObject(https://pdfobject.com/ 实现在线嵌入PDF显示的方式。上面有很多显示样式可选,下面这项可以相关的地址如下:本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
PDFObject官网地址:https://pdfobject.com/#browser-support本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
其中一个全屏展示PDF的示例页面:https://pdfobject.com/examples/full-browser-default.html本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
可查看其源代码复制下来内容修改下路径:view-source:https://pdfobject.com/examples/full-browser-default.html本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
下载相应的css和js文件,将其代码精简后如下:本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>PDFObject Example: Full-browser embed (no selector specified)</title> <link href="./css/examples.css" rel="stylesheet" /> </head> <body> <div class="pdfobject-com"><a href="http://pdfobject.com">PDFObject.com</a></div> <script src="./js/pdfobject.min.js"></script> <script> PDFObject.embed("url/to/pdf.pdf"); </script> </body> </html>但是发现软件上传的pdf文件依然还是显示不了,而通过在浏览器直接向minio上传的文件都可以正常访问。通过web调用pdf记录可以看到此时HTTP状态码显示为206,Content type类型值不是pdf,通过浏览器上传的pdf文件调用时显示的是application/pdf。排查发现软件通过SDK上传文件到minio时有一个参数为Content type,其值被写死导致。本文地址:http://www.04007.cn/article/1133.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/1133.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
![]() |
![]() |
手机扫码直接打开本页面 |