出错的代码:
#接收请求数据
def search(request):
request.encoding = 'utf-8'
if 'q' in request.GET:
message = '你搜索的内容为: ' + request.GET['q']
else:
message = '你提交了空表单'
return HttpResponse(message)
错误现象:
解决方法:
#接收请求数据
def search(request):
**#这里设置系统的默认编码方式**
if sys.getdefaultencoding() != 'utf-8':
reload(sys)
sys.setdefaultencoding('utf-8')
defaultencoding = sys.getdefaultencoding()
request.encoding = 'utf-8'
if 'q' in request.GET:
message = '你搜索的内容为: ' + request.GET['q']
else:
message = '你提交了空表单'
return HttpResponse(message)
本文介绍了一种在Python Web应用中解决请求数据编码问题的方法。通过调整系统默认编码为UTF-8,确保了从HTTP请求中获取的数据能正确解析。特别针对GET请求中的参数进行了处理,避免了因编码不一致导致的数据乱码。
1376

被折叠的 条评论
为什么被折叠?



