正如在其他cffile上传问题上所指出的,
GetPageContext().formScope().getUploadResource("myFormField").getName()在实际执行cffile之前,可以在服务器上获得文件名(对于Railo和Lucee,ColdFusion有不同的方法),但我注意到了一个有趣的问题:如果浏览器是IE,则返回完整的源路径,包括文件名。另一方面,Firefox和Chrome只返回文件名。
对于我的应用程序,我需要完整的路径,但是当浏览器是FireFox或Chrome时,我还没有找到它。如果有人有任何想法,我将非常感激!
发布于 2016-07-28 16:25:22
(从评论中扩大)
我不熟悉getUploadResource()函数。但是,纵观this related thread,它似乎返回了客户端提交的文件信息。虽然有推荐的指导方针,但最终还是the value received on the server is whatever the browser chooses to send。它不是可以被服务器端代码更改或控制的东西。因此,如果Firefox和Chrome返回与IE不同的内容,那么您就倒霉了。
(顺便说一句,我个人一直觉得Internet在这方面有点奇怪。传统的浏览器是restricted from certain file access operations for security reasons,除非使用有符号的控件。因此,您可能期望这些限制将禁止浏览器提交有关客户端文件系统结构的信息。事实上,大多数浏览器不提交带有上传的路径信息,只提交文件名。很明显,Internet选择了做一些事情。不同..。(不论出于何种原因)
对于我的应用程序,我需要完整的路径
说了这些之后,您为什么需要从客户端机器获得路径?
https://stackoverflow.com/questions/38623252
复制相似问题