Если вы не можете или не хотите изменять реестр windows для его исправления (поскольку для него требуются некоторые привилегии, которых у вас может не быть), вы можете использовать только один вариант - установить его непосредственно в модуле lib mimetypes.
Обычно он находится на C:\python38\Lib\mimetypes.py
, но вы можете найти его, запустив в командной строке следующее:
python -c "import mimetypes; print(mimetypes.__file__)"
Откройте напечатанный файл (вам могут потребоваться права администратора). если это не локальная установка python), найдите строку def guess_type(...):
, которая в моей версии находится в строке 97
, и добавьте следующие строки в начале функции (в моем случае это было в L116
и L117
):
if (isinstance(url, str) and url[-3:] == '.js'):
return 'application/javascript', None
После сохранения вернитесь в командную строку и проверьте, работает ли он:
python -c "import mimetypes; print(mimetypes.guess_type('index.js'))"
Обратите внимание, что это «жесткое кодирование» не всегда является лучшим опция, так как при обновлении версии python mimetypes.py
будет удалено с этим «исправлением», но это полезно при использовании локальной установки python на школьном компьютере, например.
Есть обсуждение этой проблемы на * Тензорный репозиторий , если вы хотите sh, чтобы узнать больше об этом.