# 状态码
class ReturnCode:
"""
和前台共同协商 好的 一些状态码信息
ReturnCode.SUCCESS
"""
SUCCESS = 0
FAILED = -100
UNAUTHORIZED = -500
BROKEN_AUTHORIZED_DATA = -501
WRONG_PARMAS = -101
# 类方法(不需要实例化类就可以被类本身调用)
# ReturnCode.message(code)
@classmethod
def message(cls, code):
if code == cls.SUCCESS:
return 'success'
elif code == cls.FAILED:
return 'failed'
elif code == cls.UNAUTHORIZED:
return 'unauthorized'
elif code == cls.WRONG_PARMAS:
return 'wrong params'
else:
return ''
def wrap_json_response(data=None, code=None, message=None):
"""
wrap 是包裹包装的意思,包装json格式的返回信息
:param data:
:param code: ReturnCode类定义的返回码
:param message:ReturnCode类定义的返回码对应的message信息
:return:返回字典{data:None,code:0,message:success}
"""
response = {}
if not code:
code = ReturnCode.SUCCESS
if not message:
# 根绝返回码,获取对应信息
message = ReturnCode.message(code)
if data:
response['data'] = data
response['result_code'] = code
response['message'] = message
return response
if __name__ == "__main__":
data = "xxxxx"
# code=ReturnCode.SUCCESS ,除了SUCCESS,还可以是
"""
SUCCESS
FAILED
UNAUTHORIZED
BROKEN_AUTHORIZED_DATA
WRONG_PARMAS
"""
response = wrap_json_response(data=data,code=ReturnCode.SUCCESS)
print("我们可以使用 JsonResponse(data=response, safe=False) 进行返回")
print("response的值", response)
print("response的类型", type(response))
"""
输出结果:
我们可以使用 JsonResponse(data=response, safe=False) 进行返回
response的值 {'data': 'xxxxx', 'result_code': 0, 'message': 'success'}
response的类型 <class 'dict'>
"""
封装json数据,返回码和对应信息,还有其他数据。
猜你喜欢
转载自blog.csdn.net/sunt2018/article/details/86553930
今日推荐
周排行