MIME-тип для почтового файла в Google Chrome - PullRequest
17 голосов
/ 13 мая 2009

Я обнаружил странную проблему с типом mime zip-файла, когда работал над приложением Symfony .

Согласно w3school , тип mime для zip-файла application/zip. Это то, во что я тоже верю.

Но когда я загружаю zip-файл в моем приложении Symfony с помощью IE, mime-тип этого zip-файла равен application/x-zip-compressed. Когда я загружаю zip-файл в Firefox, MIME-тип этого zip-файла равен application/octet-stream.

Ни один из них не является application/zip, как мне хотелось бы верить.

Самое странное поведение из всех, это Google Chrome. Когда я загружаю ZIP-файл в Google Chrome, я не могу определить правильный тип MIME для него. Хотя я почти уверен, что это не

application/zip   
application/x-zip
application/octet-stream
application/x-zip-compressed

Тип mime для zip-файла в Google Chrome - пустая строка, как я выяснил, выгрузив возвращенный объект sfValidatorFile. Обратите внимание, что sfValidatorFile.type - это "" для zip-файла.

Но объект sfValidatorFile.type, возвращаемый для файла JPEG, равен jpeg.

Мне кажется, что в Symfony или Google Chrome есть ошибка

Дополнительная информация. Похоже, что Gmail интерпретирует тип mime zip-файла как application / zip в Google Chrome. Это правильное поведение. Кажется, чтобы подтвердить, что это ошибка Symfony.

Ответы [ 3 ]

25 голосов
/ 29 августа 2010

На данный момент MIME-тип zip-файла в Google Chrome application / octet-stream . :)

3 голосов
/ 13 сентября 2009

Это ошибка Google Chrome, а не Symfony. У меня та же проблема с ZIP-пантомимой в Google Chrome.

У меня есть собственное приложение, написанное на php.

Когда вы пишете echo $_FILES['yournameattr']['type'];, он возвращает пустую строку, когда вы загружаете ZIP-файл, но когда вы загружаете файл GIF или JPEG, он возвращает изображение / JPEG или изображение / GIF.

У меня есть Google Chrome версии 3.0.195.6 (бета).

Хотя, если вам нужно быстрое решение, вы можете использовать preg_match, чтобы проверить расширение файла (zip или нет).

if (preg_match('/(.*)\.zip/',$_FILES['yournameattr']['name'])) {echo 'This is zip.';}
0 голосов
/ 13 мая 2009

Мне кажется, что в Symfony есть ошибка.

Билет был открыт в здесь .

...