如何在GRAILS控制器中验证服务器端的任何文件上载?
我在普惠制中的代码: 我的服务代码: 事情发生在ifuserService.fileExt.containsScandResume.getContentType中 正在调用该服务,但未重新启动上载失败的任何内容,且未显示任何消息。请帮忙。如何在GRAILS控制器中验证服务器端的任何文件上载?,grails,groovy,Grails,Groovy,我在普惠制中的代码: 我的服务代码: 事情发生在ifuserService.fileExt.containsScandResume.getContentType中 正在调用该服务,但未重新启动上载失败的任何内容,且未显示任何消息。请帮忙。 提前谢谢。我可能会这样做: 在控制器中: def userService def candidate = new Candidate(params) def resumeFile = request.getFile('candResume') if
提前谢谢。我可能会这样做: 在控制器中:
def userService
def candidate = new Candidate(params)
def resumeFile = request.getFile('candResume')
if (userService.allowedExtension(resumeFile)) {
blablabla
在职:
Class UserService {
def allowedExtension (aFile) {
List fileExtensions=["doc", "docx", "pdf", "rtf"]
println "--------in the service----------"
def extension = aFile?.originalFilename?.substring(aFile?.originalFilename?.lastIndexOf(".") + 1);
return fileExtensions.contains(extension); // if you rely on the actual file name
}
}
我建议您使用mimetype而不是扩展名文件 在这里,您可以找到如何使用Tika获取文件的mimetype:
public List fileExt(){
List fileExtensions=["doc", "docx", "pdf", "rtf"]
println "--------in the service----------"
return fileExtensions
}
def userService
def candidate = new Candidate(params)
def resumeFile = request.getFile('candResume')
if (userService.allowedExtension(resumeFile)) {
blablabla
Class UserService {
def allowedExtension (aFile) {
List fileExtensions=["doc", "docx", "pdf", "rtf"]
println "--------in the service----------"
def extension = aFile?.originalFilename?.substring(aFile?.originalFilename?.lastIndexOf(".") + 1);
return fileExtensions.contains(extension); // if you rely on the actual file name
}
}