将PDF上传到媒体档案后,我试图从网站上的页面链接到它。
在编辑内容时,我使用超链接工具,然后通过URL输入框选择我想要链接的PDF。
保存并发布内容后,单击该链接会下载PDF,但我没有看到任何明显的方法可以使用当前的Media ID Composite提供的功能在浏览器中进行查看。渲染时,我们得到这个:
<a href="/media/64d5b13e-07f2-402f-9b1a-dcfd75d977da/F-KbnQ/CompositeDocumentation.pdf" target="_blank">pdf</a>
有没有办法可以在不使用媒体ID的情况下引用PDF而只是使用文件名?
在阅读了PauliØsterø所说的内容之后,我理解了这个问题,但我仍然无法想到解决方案。
我可以通过开发人员工具将?download = false添加到href网址,以便在浏览器中查看PDF。但是当我尝试通过Composite将?download = false添加到href时,它不会生效,我得到控制台输出:“资源被解释为Document但是使用MIME类型application / pdf传输:”“ 。“
以下是Pauli要求的网络跟踪。在图像中,我在源视图中包含了我添加的位?download = false到URL,以防万一可能有另一种方法来添加它。
修改:页面的网址和标题。
以下是包含链接的页面的标题: http://c1.wittenauers.com/cafe/test
答案 0 :(得分:3)
扩展Pauli的答案,您可以将以下代码段添加到页面模板中,以将“?download = false”自动添加到所有pdf链接。
$("a").each(function () {
if (this.href.includes(".pdf")) {
this.href = this.href + "?download=false";
}
})
答案 1 :(得分:1)
根据您的体验,在我看来,Composite已经将您上传的文件的MIME类型弄错了,并且因此没有正确地告诉浏览器该文件是pdf,并且浏览器不知道是什么与它有关。
This is the exact line负责此行为,逻辑如下
我在这里做了一个快速测试,以表明行为是预期的。至少在Windows 8的Chrome浏览器中