异常处理
更新时间:2019-06-14
系统异常
Media异常提示有如下三种方式:
异常方法 | 说明 |
---|---|
BceHttpClientError | 重试时抛出的异常 |
--last_error | 最后一次重试时抛出的异常 |
----BceClientError | Media客户端产生的异常 |
----BceInvalidArgumentError | 传递参数产生的异常 |
----BceServerError | Media服务器产生的异常 |
用户可以使用try获取某个事件所产生的异常:
Plain Text
1from baidubce.exception import BceHttpClientError
2from baidubce.exception import BceServerError
3from baidubce.exception import BceClientError
4try:
5 watermark_id = "non_exist"
6 client.delete_watermark(watermark_id)
7except BceHttpClientError as e:
8 print "Cannot delete the watermark: ", e.message
返回为:
Plain Text
1Cannot delete the watermark: Unable to execute HTTP request. Retried 0 times. A
2ll trace backs:
3>>>>Traceback (most recent call last):
4>>>> File "C:\tools\Python27\lib\site-packages\baidubce\http\bce_http_client.py
5", line 183, in send_request
6>>>> if handler_function(http_response, response):
7>>>> File "C:\tools\Python27\lib\site-packages\baidubce\http\handler.py", line
871, in parse_error
9>>>> raise bse
10>>>>BceServerError: watermark: non_exist does not exist
11
12也可以用这种方式直接获取原始错误信息:
13print "Cannot delete the watermark: ", e.last_error.message
14得到:
15Cannot delete the watermark: watermark: non_exist does not exist
参数异常
Media Python SDK的每个调用都有一些类型固定不可以为空的参数,若该参数传入为空值则返回BceClientError,若该参数传入类型错误则返回TypeError。