python调用外部api返回数据_处理调用外部api时的异常

本文探讨了在构建REST服务时,如何适当地处理Udemy API 返回的潜在错误。作者在get_all()方法中提出处理异常的问题,并讨论了是否应在该层级还是调用者层面进行异常管理。

我调用Udemy外部api来构建一个简单的REST服务,用于实验目的。在

这是我的get_all()courses方法。在class Courses(object):

"""

Handles all requests related to courses.

ie; gets the courses-list, courses-detail, coursesreviews-list

"""

def __init__(self, api):

self.api = api

logger.debug("courses initialized")

def get_all(self):

page = 1

per_page = 20

while True:

res = self._get_courses(page, per_page)

if not res['results']:

break

try:

for one in res['results']:

yield one

except Exception as e: -->>>handling exception

print(e)

break

page += 1

def _get_courses_detail(self, page, per_page):

resource = "courses"

params = {'page': page, 'per_page': per_page,

# 'fields[course]': '@all'

}

res = self.api.get(resource, params)

return res

现在,假设api的返回数据中可能存在错误,那么处理异常(在get_all()方法中)是否合理?在

或者这里不需要处理异常(在get_all中),而应该由调用函数来处理?在

我看到的大多数开源项目都不处理这个异常。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值