Laravel 中如何控制返回的错误, 正确的写法是什么?
逻辑层可能会返回错误.
所以 controller 层代码如下, 需要判断逻辑层返回的状态码, 如何能够优雅的处理?
$storeInfo = $this->htmlHandleService->getStoreInfo($webName, $htmlInfo['data']);
if ($storeInfo['code'] !== 200) {
Log::error($storeInfo['data']);
die;
}
// 获取 coupons 信息.
$couponsInfo = $this->htmlHandleService->getCouponsInfo($webName, $htmlInfo['data']);
if ($couponsInfo['code'] !== 200) {
Log::error($couponsInfo['data']);
die;
}
// 数据处理, 保存商城信息.
$saveStoreRes = $this->couponsStorageService->saveStore($storeInfo['data']);
if ($saveStoreRes['code'] !== 200) {
Log::error($saveStoreRes['data']);
die;
}
// 数据处理, 保存 coupons 信息.
$saveStoreRes = $this->couponsStorageService->saveCoupons($saveStoreRes['data'], $couponsInfo['data']);
if ($saveStoreRes['code'] !== 200) {
Log::error($saveStoreRes['data']);
die;
}
// 推送到队列, 通知抓取完毕, 可以后处理.
$pushRes = Redis::lpush(config('coupons.laterHandleQueueName'), strtolower($saveStoreRes['data']['id']));
if (! $pushRes) {
Log::error('push 到队列: ' . config('coupons.laterHandleQueueName') . ' 失败');
die;
}
想我这样, 如何能够优雅的处理返回的错误.
我这个是 cli 下的 command 脚本.
推荐文章: