Raise Exception from reponse message

时间:2019-03-17 22:53:49

标签: python-3.x

How to raise an exception from the response message e.g {'status': "insufficient credit"}

                try:
                    new_order = api.request(r)
                except as                       :
                    print(new_order['status'])
                else:
                    print(new_order)

The response message has different key/values when successful/unsuccessful.

Thanks

1 个答案:

答案 0 :(得分:0)

我需要知道api.request是什么才能准确回答您的问题。

不知道它是什么,我建议使用带有标准Python库中错误的traceback

例如:

import traceback
try:
    new_order = api.request(r)
except Exception as err:
    print(err)
    traceback.print_exc()

else:
    print(new_order)

此外,如果api.request引发异常,则该异常与他们发送的任何“状态消息”都没有关系。如果他们告诉您有关错误的信息,那么api.result可能会返回一个带有状态代码和/或错误消息的对象/列表,并且不会在服务器上引发异常(我认为这不是)他们可以这样做)。

这样想:您的服务器端代码执行api.request,这可能是对api服务器的GET或POST请求。如果您的请求中有错误,他们会向您发送一条消息,说明问题出在哪里(我想)。在此过程中,不会在任何地方引发

如果请求发送到他们的服务器,则服务器上不会出现任何异常。

调用raise 'some exception here'或存在语法错误/其他严重错误时,将引发异常。无论哪种情况,您的代码执行都会立即停止,并且服务器将使用500 internal service error响应您的客户端。