Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在aiohttp中配置静态文件的编码?_Python_Utf 8_Python Asyncio_Aiohttp - Fatal编程技术网

Python 如何在aiohttp中配置静态文件的编码?

Python 如何在aiohttp中配置静态文件的编码?,python,utf-8,python-asyncio,aiohttp,Python,Utf 8,Python Asyncio,Aiohttp,如何确保开发期间提供的静态文件使用utf-8 我有一个这样的静态处理程序: app.router.add_static('/static', MY_STATIC_DIR) 但是,我注意到,在开发过程中,utf-8字符在浏览器中显示为乱码。在生产中通过nginx提供相同的文件时,同样的文件显示良好 编辑: 所讨论的内容存在于webpack.js文件中。我已经测试了使用nginx和node提供这个捆绑包,问题消失了。但是,为了保持开发的简单性,我只想使用aiohttp,而不必启动第二个进程。内容编

如何确保开发期间提供的静态文件使用utf-8

我有一个这样的静态处理程序:

app.router.add_static('/static', MY_STATIC_DIR)
但是,我注意到,在开发过程中,utf-8字符在浏览器中显示为乱码。在生产中通过nginx提供相同的文件时,同样的文件显示良好

编辑:


所讨论的内容存在于webpack.js文件中。我已经测试了使用nginx和node提供这个捆绑包,问题消失了。但是,为了保持开发的简单性,我只想使用aiohttp,而不必启动第二个进程。

内容编码由
内容类型
头决定,该头反过来用于根据文件扩展名查找类型

它与文本字符编码无关。计算纯文本编码是一个非常昂贵的过程(需要通过像
chardet
这样的工具来处理读取文件内容),而且不是100%稳定(一个文件可以包含多个编码)

附言


aiohttp中的静态文件支持用于处理图像等资源,而不是人类可读的纯文本。HTML应该正确呈现。

谢谢!在我的例子中,问题似乎是服务webpack.js包时使用的编码。我测试了使用nginx和node提供这个捆绑包,问题就解决了。你知道如何在.js文件中使用guess_type吗;mimetypes.init();mimetypes.type_映射['.js']='应用程序/javascript;charset=utf-8'Uh,请确切说明您添加了此更改。