У меня есть приложение ASP.NET, созданное с использованием C # для бэкэнда. У меня есть форма, которая загружает PDF-файл и проверяет MIME-тип application / pdf, чтобы убедиться, что это правильный файл. Мне нужно сделать это в отдельной форме для файлов MP4, но это не сработало. Это всегда возвращалось ложным. Я проверил возвращенный MIME-тип FileUpload.PostedFile.ContentType в webkit, который был совершенно точным. Firefox 5 и IE 8, однако, протестированы для text / csv и application / octet-stream соответственно. Это абсолютно бессмысленно для меня. Я также попытался сопоставить расширения с правильными типами MIME в файле web.config, например:
<staticContent>
<mimeMap fileExtension=".mp4" mimeType="video/mp4" />
<mimeMap fileExtension=".m4v" mimeType="video/m4v" />
<mimeMap fileExtension=".ogg" mimeType="video/ogg" />
<mimeMap fileExtension=".ogv" mimeType="video/ogg" />
<mimeMap fileExtension=".webm" mimeType="video/webm" />
</staticContent>
А в бэкэнд-файле CS я использовал это для проверки типа содержимого опубликованного файла:
if (file.PostedFile.ContentType == "video/mp4" ||
file.PostedFile.ContentType == "video/mpeg" ||
file.PostedFile.ContentType == "video/ogg" ||
file.PostedFile.ContentType == "video/quicktime" ||
file.PostedFile.ContentType == "video/webm")
return true;
else
return false;
Также обратите внимание, что я использую локальный сервер разработки, который поставляется с VS