我正在使用python和django来开发一些REST API。我有一个关于请求调用返回的JSON unicode字符串的问题。所以,我做这样的事情:json对象由http响应返回
resp = requests.get(self.url)
if resp.status_code is status.HTTP_200_OK:
obj = json.loads(resp.json())
有了这个,我可以遍历条目:
for o in obj:
print o
这将打印类似:
{u'pk': 1, u'model': u'aslapp.imagetypemodel', u'fields': {u'type': u'PNG'}}
{u'pk': 2, u'model': u'aslapp.imagetypemodel', u'fields': {u'type': u'JPG'}}
但是,我读了resp.json()
调用应该在内部调用这个json.loads()
方法,并将照顾编码的东西。然而,只是在做:
obj = resp.json()
for o in obj:
print o
只是遍历unicode字符串中的每个字符。那么我是否应该通过loads
方法再次运行它,如果我想遍历JSON条目?遍历resp.json()
返回的所有JSON记录的正确方法是什么?
我有点困惑 - 'requests.get'与django或[requests](http://docs.python-requests.org/en/master/)有关? – dahrens