为什么 python 无法从 canvasapi 捕获我的“ResourceDoesNotExist”错误?

Why does python fail to catch my "ResourceDoesNotExist" error from canvasapi?

提问人:Yubi 提问时间:9/28/2023 更新时间:9/28/2023 访问量:14

问:

我的程序应该访问 Canvas API。它使用访问令牌执行此操作。我需要捕获使用无效令牌并且 API 找不到与之关联的任何资源时发生的异常。测试我的 try/except 语句时,它无法捕获“ResourceDoesNotExist”异常。这是正确的错误类型,也是我在程序崩溃时看到的错误。

try:
    self.canvas_api = Canvas(API_URL, API_TOKEN)
    self.user_name = self.canvas_api.get_current_user().name
    self.user_uid = self.canvas_api.get_current_user().id
except (CanvasException, exceptions.InvalidAccessToken, exceptions.ResourceDoesNotExist) as e:
    self.user_name = "Invalid Token"
    self.user_uid = e
    print(e)

enter image description here

我尝试添加一个更通用的异常类型,例如“CanvasException”,但这也失败了,让“ResourceDoesNotExist”异常通过。

python-3.x 异常 try-catch

评论


答: 暂无答案