python 中 TypeError: Object of type TestCase is not JSON serializable
【错误收集】
Traceback (most recent call last):
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 1536, in __call__
return self.wsgi_app(environ, start_response)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 1514, in wsgi_app
response = self.handle_exception(e)
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 298, in error_router
return original_handler(e)
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 295, in error_router
return self.handle_error(e)
~~~~~~~~~~~~~~~~~^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 310, in handle_error
_handle_flask_propagate_exceptions_config(current_app, e)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 1511, in wsgi_app
response = self.full_dispatch_request()
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 919, in full_dispatch_request
rv = self.handle_user_exception(e)
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 298, in error_router
return original_handler(e)
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 295, in error_router
return self.handle_error(e)
~~~~~~~~~~~~~~~~~^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 310, in handle_error
_handle_flask_propagate_exceptions_config(current_app, e)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 917, in full_dispatch_request
rv = self.dispatch_request()
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask\app.py", line 902, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 493, in wrapper
return self.make_response(data, code, headers=headers)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\__init__.py", line 522, in make_response
resp = self.representations[mediatype](data, *args, **kwargs)
File "D:\myProgrom\ev\pythonnwe\Lib\site-packages\flask_restful\representations\json.py", line 21, in output_json
dumped = dumps(data, **settings) + "\n"
~~~~~^^^^^^^^^^^^^^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\json\__init__.py", line 238, in dumps
**kw).encode(obj)
~~~~~~^^^^^
File "D:\myProgrom\ev\pythonnwe\Lib\json\encoder.py", line 200, in encode
chunks = self.iterencode(o, _one_shot=True)
File "D:\myProgrom\ev\pythonnwe\Lib\json\encoder.py", line 261, in iterencode
return _iterencode(o, 0)
File "D:\myProgrom\ev\pythonnwe\Lib\json\encoder.py", line 180, in default
raise TypeError(f'Object of type {o.__class__.__name__} '
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Object of type TestCase is not JSON serializable
【错误分析】
传递对象的应该是JSON格式的,但是实际上传递进去的对象是一个TestCase类型的
【解决办法】
将TestCase对象进行json格式化,
![]()
【运行结果】
请求信息
![]()
后端接受到的信息


