Voglio convalidare il tipo di file per assicurarmi che l'utente stia caricando un'immagine di tipo JPEG, GIF o PNG. Invece di controllare l'estensione del file, ho pensato che l'utilizzo di HttpPostedFile.ContentType sarebbe stato più sicuro dal momento che controlla il tipo di contenuto MIME.HttpPostedFile.ContentType è un modo impeccabile per convalidare un file caricato?
protected void cvValidateImageType_ServerValidate(object source, ServerValidateEventArgs args)
{
if (fupImage.HasFile)
{
args.IsValid = (fupImage.PostedFile.ContentType.ToLower() == "image/jpg" ||
fupImage.PostedFile.ContentType.ToLower() == "image/jpeg" ||
fupImage.PostedFile.ContentType.ToLower() == "image/pjpeg" ||
fupImage.PostedFile.ContentType.ToLower() == "image/gif" ||
fupImage.PostedFile.ContentType.ToLower() == "image/x-png" ||
fupImage.PostedFile.ContentType.ToLower() == "image/png");
}
else
args.IsValid = true;
}
È un modo impeccabile per controllare il tipo di file o può essere ingannato?