我有一个url链接,其中包含一些用于请求的中文字符(http://localhost:8000/media/imges/qiyun_admin_physicalserver_webmanage/operation_system/域名解析.png)
如果我从浏览器地址栏复制包含中文的url,它将变成: http://localhost:8000/media/imges/qiyun_admin_physicalserver_webmanage/operation_system/%E5%9F%9F%E5%90%8D%E7%BB%91%E5%AE%9A.png
出现错误:
'latin-1' codec can't encode characters in position 67-70: ordinal not in range(256)
我在SO中找到了一个相关的帖子: UnicodeEncodeError: 'latin-1' codec can't encode character
我已经检查了数据库使用utf-8
编码,表也是utf-8
:
但为什么我会得到编码错误?如何解决这个问题?在
我的后端是Django/Django Rest框架。在
我也面临同样的问题 这里的问题是图像“文件”的名称 我认为它在开发服务器上运行良好,在生产服务器上会出错
这需要一些配置,以使服务器能够提供这样名称的文件。 为了安全起见,URL和文件名将在URL中 如前所述 我想出了一个解决方案来改变文件或图像的名称,如果它的形状不正确,就像这个答案提到的https://stackoverflow.com/a/1547940/6840261 我是
不生成名称我只将文件命名为“a.thesameextension_of the file”和django处理多个同名文件 必须在save()处添加代码才能应用于新模型的每次更改或添加
这个解决方案会很好地工作,正如我在自己的问题中提到的,还有另一个解决方案,但我认为这不是一个好的解决方案,因为您必须向django请求处理程序和wsgi的核心添加代码 你可以检查一下How to fix [ERROR] [2699022] wsgiHandler pApp->start_response() return NULL?
相关问题 更多 >
编程相关推荐