我有一个后台工作,从谷歌adwords获取数据。现在我的问题是我使用后台工作程序获取数据。
当响应为空时,最好的办法是有什么方法可以重新运行或者最好的方法是什么?
public function handle()
{
$googleService = new GoogleAds;
$data = $googleService->report()
->from('CRITERIA_PERFORMANCE_REPORT')
->during('20170101', '20170210')
->select('CampaignId, Id, Criteria, IsNegative, Clicks, Ctr, Cost, Labels')
->getObject();
if(!isset($data->result) || empty($data->result)){
//what to do when no data back ?
}
$this->transform->response($data);
}
答案 0 :(得分:0)
您可以抛出异常,然后它将返回到您的队列,并且工作人员将尝试再次执行它。
启动工作人员时,会有一个--tries
参数,指示在转到表failed_jobs
之前尝试执行的时间。
您可以在official documentation中查看参考。