我想验证一个.pfx文件,但是它一直都失败。
我尝试了以下代码:
$validacoes = [
'certificado' => 'mimetypes:application/x-pkcs12'
];
但它不起作用。
如果我愿意
dd($request->file('certificado')->getMimeType())
我得到:application / x-pkcs12。
怎么了?
对于图片,它确实起作用:image / jpg,image / png等
答案 0 :(得分:0)
根据the docs,这应该是这样:
'certificado' => 'mimes:p12,pfx'
答案 1 :(得分:0)
尝试
$validacoes = [
'certificado' => 'mimes:application/x-pkcs12'
];
答案 2 :(得分:0)
我有完全相同的问题。
我的文件:
"certificateFile" => UploadedFile {#5824
-test: false
-originalName: "file.pfx"
-mimeType: "application/x-pkcs12"
-error: 0
#hashName: null
我的验证规则:
public function rules()
{
return [
'certificateFile' => 'required|mimetypes:application/x-pkcs12',
'certificatePassword' => 'required'
];
}
有创意吗?
编辑:好的,在另一个可能回答我们问题的问题(Laravel 5 Mime validation)中找到了答案。
在此注释(https://stackoverflow.com/a/30023227/2796516中,解释了Laravel使用guessExtension来验证我们的文件。并检查所述扩展的源代码,我们发现:
'application/x-pkcs12' => 'p12',
这可能意味着它仅接受带有p12扩展名的证书文件,而pfx无法使用。