ColdFusion 10 cffile操作=";上传“;接受属性通配符don';行不通

ColdFusion 10 cffile操作=";上传“;接受属性通配符don';行不通,coldfusion,coldfusion-10,Coldfusion,Coldfusion 10,此代码用于处理ColdFusion 9: <cfif form.btnSaveImage EQ "Upload"> <cftry> <cffile accept="image/*" action="upload" destination="C:\T" filefield="vcImageFile" nameconflict="overwrite"> <cfcatch type="Any">

此代码用于处理ColdFusion 9:

<cfif form.btnSaveImage EQ "Upload">
    <cftry>
        <cffile accept="image/*" action="upload" destination="C:\T" filefield="vcImageFile" nameconflict="overwrite">
        <cfcatch type="Any">
            <cfdump var="#cfcatch#" label="cfcatch">
        </cfcatch>
    </cftry>
</cfif>

<form action="<cfoutput>#cgi.SCRIPT_NAME#</cfoutput>" method="post" name="frmImagesAdd" id="frmImagesAdd" enctype="multipart/form-data">
    <label for="vcImageFile">Image File*:</label><br>
    <input type="file" name="vcImageFile" id="vcImageFile" size="40" maxlength="255" message="Image file is required to upload."><br>
    <input type="hidden" name="btnSubmit" value="Add Image">
    <input name="btnSaveImage" type="submit" value="Upload">
</form>

图像文件*:

问题是cffile标记的
accept=“image/*”
属性。在ColdFusion 9中,此通配符用于接受任何MIME类型以“image/”开头的文件。在ColdFusion 10中,我得到以下错误消息:

“上载的文件image/jpeg的MIME类型或扩展名为 服务器不接受。”

MimeType值为“image/jpeg”,因此它应该与通配符一起使用

我看了看照片,上面写着:

ColdFusion 10:对属性accept}的修改

但是,它没有详细说明这些修改是什么


查看,它表示将接受以逗号分隔的mime类型列表。这是否意味着不再接受通配符?

仅供参考,这篇博文在去年同一时间指出了同样的问题:

现在,我记得在CF中对MIME类型检查进行了更改 10,但我不完全确定。这段代码,由我们的 几个月前,开发人员将允许任何“图像”MIME类型。 我们发现我们不能做这种通配符 在CF 10下的映射,我们现在必须列出每个接受的MIME 键入逗号分隔的列表


(编辑)如果使用,会发生什么?没有回答您的问题,但您可能希望阅读以下内容:。不确定是否仍适用于CF 10,仅供参考…我个人已经指定了我想要接受的每种图像类型:image/jpeg、image/pjpeg、image/png、image/gif。在我看来,这样做比使用通配符要好。@volumeone-我不知道CF10是否已更改,但在早期版本中,“accept”方法很容易破解,因此无论如何都不应该依赖它。请参阅上面的链接。@Leigh,TYVM!!对于指向“不依赖cffile accept属性”的信息的链接。我必须检查代码以确保不会发生这种情况!但愿我能多投一次票。