def error(self, status_code, code, msg): data = { 'code': code if code is not None else '', 'message': msg if msg is not None else errors.message(code) } return http.HttpResponse(json.dumps(data), status=status_code, content_type='application/json')
def post(self, request, *args, **kwargs): # Only accept JSON if request.META['CONTENT_TYPE'] != 'application/json': return self.bad_request( msg="Requests must have CONTENT_TYPE 'application/json'") try: payload = json.loads(request.body.decode('utf-8')) except ValueError: return self.bad_request(msg="JSON payload could not be decoded") try: self.validate_payload(payload) except InvalidPayload as e: return self.bad_request(msg=str(e)) except ValidationError as e: return self.forbidden(code=e.code, msg=errors.message(e.code)) # We can still get a ValidationError even if the payload itself is # valid. try: return self.valid_payload(payload) except ValidationError as e: return self.forbidden(code=e.code, msg=errors.message(e.code))
def post(self, request, *args, **kwargs): # Only accept JSON if request.META['CONTENT_TYPE'] != 'application/json': return self.bad_request( msg="Requests must have CONTENT_TYPE 'application/json'") try: payload = json.loads(request.body.decode('utf-8')) except ValueError: return self.bad_request( msg="JSON payload could not be decoded") try: self.validate_payload(payload) except InvalidPayload as e: return self.bad_request(msg=str(e)) except ValidationError as e: return self.forbidden(code=e.code, msg=errors.message(e.code)) # We can still get a ValidationError even if the payload itself is # valid. try: return self.valid_payload(payload) except ValidationError as e: return self.forbidden(code=e.code, msg=errors.message(e.code))
def error(self, status_code, code, msg): data = {'code': code if code is not None else '', 'message': msg if msg is not None else errors.message(code)} return http.HttpResponse(json.dumps(data), status=status_code, content_type='application/json')