我正在使用CF9。我的问题涉及一个管理应用程序,它在登录时设置会话变量以识别用户和用户权限。根据用户级别,允许查看某些页面,不允许其他页面。 (我将这称为我的'安全框架'。这包含在根目录中的所有内容。)
此安全框架包含CFM页面顶部的cfif
语句以及页面底部的结束cfelse
和(</)cfif
。如果用户具有该级别权限 - 标准内容,则此开头cfif
和结束cfif
之间的所有内容都会显示。
某些用户可以上传PDF文件,这里没问题。 PDF文件上传到根目录外的文件夹,然后移动并重命名为根目录中的文件夹。
上传时,用户选择类别和子类别等,并在上载过程中将这些变量插入SQL数据库中。因此,我有filePaths和fileNames等在页面上设置动态链接,供用户在浏览器中单击并加载PDF(受密码保护)。
我的动态链接指向包含网址变量ShowThisPDF.cfm?
的{{1}}。我已在页面顶部和底部设置了filePath= #filePath# & fileName = #fileName#
安全框架,并尝试将上传的PDF复制到此页面中,以便PDF将显示在浏览器中。
我已经尝试了很多方法来执行ShowThisPDF.cfm
和cfdocument
以及cfpdf
等等。当我读到这个错误时,它看起来确实达到了由于我认为安全框架,每次上传的文件都会被“拒绝访问”。
另外,在本应用程序的其他地方,我可以使用cfcontent
从我的cf页面创建PDF,其中安全框架包裹在页面周围,这非常有效 - 在浏览器中显示PDF。我的问题是将现有的PDF加载到具有安全框架的CFM页面中 - 这应该允许加载PDF。
任何人都知道我如何才能完成上述任务?我讨厌尝试绕过我的安全性,将上传的PDF“复制”到CFM页面似乎合乎逻辑,该页面将PDF包装在安全框架中,然后在浏览器中显示PDF。
答案 0 :(得分:0)
同意丹 - 我有类似的问题。所以我最终做了https:使用Windows登录和ColdFusion登录Web应用程序。在一天结束时 - 他们需要2次登录才能进入系统 - 然后他们可以看到pdf文件等或他们需要什么。