Python Django在获取json时遇到请求问题

Python Django在获取json时遇到请求问题,python,django,json,Python,Django,Json,我有一个前端服务器,它从后端服务器获取一些JSON数据。两台服务器都在运行Django。这正是获取json数据的代码 def View(request): r = requests.get(path) return HttpResponse(r.json()) 但是,今天我遇到了一个奇怪的问题,在重新启动服务器后,调用成功完成一次。如果我运行以下代码:- def View(request): r = requests.get(path) r = requests.get(pat

我有一个前端服务器,它从后端服务器获取一些JSON数据。两台服务器都在运行Django。这正是获取json数据的代码

def View(request):
  r = requests.get(path)
  return HttpResponse(r.json())
但是,今天我遇到了一个奇怪的问题,在重新启动服务器后,调用成功完成一次。如果我运行以下代码:-

def View(request):
  r = requests.get(path)
  r = requests.get(path)
  return HttpResponse(r.json())
这也很成功

但是,在第二次调用View()时,我得到一个错误。错误消息是这样说的:

"uWSGI exceptions catcher for "GET /api/v1/backend/" (request plugin: "python", modifier1: 0)
Exception: TypeError: http header value must be a string
Exception class: TypeError
Exception message: http header value must be a string"

显然,这个错误是在我的后端服务器上抛出的,但我今天只在前端更改了一些模板。我不知道是什么原因导致这个问题今天开始发生。有人能给我指出正确的方向吗?

给它正确的json标题:

return HttpResponse(data, content_type='application/json')

为它提供正确的json头:

return HttpResponse(data, content_type='application/json')

mimetype
在1.6中被弃用-更好地使用
content\u type
。但是还是+1。@Guy谢谢你的回复。然而,问题最终出现在我在后端的一些newrelic代码上。在过去的5个小时里,我一直把头撞在墙上,尝试了所有的方法,当我禁用new relic monitoring时,它就起了作用。
mimetype
在1.6中被弃用-更好地使用
content\u type
。但是还是+1。@Guy谢谢你的回复。然而,问题最终出现在我在后端的一些newrelic代码上。在过去的5个小时里,我一直把头撞在墙上,尝试了所有的方法,当我禁用了新的文物监测功能时,一切都起了作用。