Python (버전 : 3.4.4) Pyramid 프레임 워크를 사용하여 json 요청을 받고 수신 된 json을 Python 객체로 변환합니다. json.loads. 단위에서는 TestApp를 사용하는 경우 아래와 같은 응용 프로그램을 테스트, 모든 아파치 mod_wsgi에를 사용하는 경우 미세하지만, 내가 json.loads에서 다음과 같은 오류 (...)json.loads -> TypeError : JSON 객체가 'dict'이 아닌 str이어야합니다.
TypeError: the JSON object must be str, not 'dict'
왜 어떤 생각을 받는가 작동?
뷰 코드 :
@view_config(route_name='api.analysis', request_method='POST', renderer='json')
def fetch_my_info(request):
data = json.loads(request.json_body, object_hook=lambda d: namedtuple('X', d.keys())(*d.values()))
...
테스트 코드 :
self.testApp = TestApp(app)
response = self.testApp.post_json('/v1/info/analysis', params={"id", "123"})
...
저는 피라미드가 이미 json을 당신을위한 사전으로 변환하고 있다고 생각합니까? – SteveJ
이미 dict 인 것처럼 들리네 – SuperStew
TestApp로 단원 테스트가 아닌 mod_wsgi로 테스트하는 이유는 무엇입니까? – edbras