Я хочу проверить тип файла, чтобы убедиться, что пользователь загружает изображение типа JPEG, GIF или PNG. Вместо того, чтобы проверять расширение файла, я подумал, что использовать HttpPostedFile.ContentType будет безопаснее, поскольку он проверяет тип содержимого MIME.
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;
}
Это безупречный способ проверить тип файла или его можно обмануть?