Javascript 将附件的名称更改为随机字符串

Javascript 将附件的名称更改为随机字符串,javascript,coldfusion,Javascript,Coldfusion,当我的系统的用户输入他们附件的名称时,出于安全原因,我希望将其保存为数据库中的随机字符串。但我想在用户查看时显示真实姓名。在ColdFusion或javascript中需要它。您只是想知道如何生成随机字符串吗?最快的方法是使用createUUID()。这就产生了一个较长的(我想是35个)字符随机字符串。您还可以使用randRand动态拾取随机字母。在服务器端,您需要将文件的原始名称和文件名的随机字符串版本存储在数据库中。如果不存储文件名的原始版本,您将不知道文件名的原始版本。或者,如果您的文件有

当我的系统的用户输入他们附件的名称时,出于安全原因,我希望将其保存为数据库中的随机字符串。但我想在用户查看时显示真实姓名。在ColdFusion或javascript中需要它。

您只是想知道如何生成随机字符串吗?最快的方法是使用createUUID()。这就产生了一个较长的(我想是35个)字符随机字符串。您还可以使用randRand动态拾取随机字母。

在服务器端,您需要将文件的原始名称和文件名的随机字符串版本存储在数据库中。如果不存储文件名的原始版本,您将不知道文件名的原始版本。或者,如果您的文件有一个通用的命名方案(即,显示给客户的所有文件名都是“nameOfCustomer coupon.pdf”),则原始文件名是不相关的,不需要存储

当对该文件发出请求时,您将使用Content Disposition HTTP头显示原始文件名:

Content-Disposition: attachment; filename=<file name.ext>

<cfheader name="Content-Disposition" value="filename=someFileName.someExtension">
内容配置:附件;文件名=

Ye用户添加了附件的标题,但我想将其更改为随机字符串,但当用户再次查看文档时,他们会看到他们输入的名称,而不是随机字符串。啊,对于这部分(他们看到了原件),请参阅下面的Brian。:)我以为你有,但只是需要随机的部分。我想补充一个更重要的注意事项。您说出于“安全原因”需要一个随机字符串。这似乎意味着您正在web根目录下存储附件。不要。认真地这是一个极其糟糕的主意。即使您在上传时重命名文件,使用负载测试工具的人员也可以在上传和重命名之间的毫秒内执行代码。我知道,因为我的一个应用程序像这样被黑客攻击了。您的上载应始终转到不可通过web访问的文件夹。时期