facebook marketing api异常处理

问题描述 投票:0回答:1

我正在使用 Facebook marketing/graph api v2.8。我已经从这里阅读了异常处理https://developers.facebook.com/docs/php/FacebookRequestException/5.0.0,我正在使用以下代码进行异常处理。

try {

} catch (Facebook\Exceptions\FacebookResponseException $e) {
      return $e->getMessage();        
    } catch (Facebook\Exceptions\FacebookAuthenticationException $e) {
      return $e->getMessage();        
    } catch (Facebook\Exceptions\FacebookAuthorizationException $e) {
      return $e->getMessage();        
    } catch (Facebook\Exceptions\FacebookClientException $e) {
      return $e->getMessage();        
    } catch (Facebook\Exceptions\FacebookOtherException $e) {
      return $e->getMessage();        
    } catch (Facebook\Exceptions\FacebookServerException $e) {
      return $e->getMessage();       
    } catch (Facebook\Exceptions\FacebookThrottleException $e) {
      return $e->getMessage();        
    } catch(Facebook\Exceptions\FacebookSDKException $e) {        
      return $e->getMessage();                
    } catch(Exception $e) {
        return "error";
    }

但我仍然收到 AuthorizationException

未捕获的异常,操作失败异常“FacebookAds\Http\Exception\AuthorizationException”,消息“(#2663) 服务条款尚未被接受。要接受,请访问 https://www.facebook.com/customaudiences/app/tos?act=

我试图包括

use Facebook\Exceptions\FacebookResponseException;
use Facebook\Exceptions\FacebookAuthenticationException;
use Facebook\Exceptions\FacebookAuthorizationException;
use Facebook\Exceptions\FacebookClientException;
use Facebook\Exceptions\FacebookOtherException;
use Facebook\Exceptions\FacebookServerException;
use Facebook\Exceptions\FacebookThrottleException;
use Facebook\Exceptions\FacebookSDKException;

但还是没有收获。

实际上,我想覆盖最大的错误,以便可以以用户友好的方式向用户显示,以便任何人都可以知道我缺少什么,或者 Facebook 营销 api 中异常处理的完美方法是什么?

facebook-graph-api facebook-php-sdk facebook-marketing-api
1个回答
0
投票

原因是您在代码中混合了两个 SDK。一种是通用的 Facebook SDK,另一种是 Facebook Marketing API SDK (https://github.com/facebook/facebook-php-ads-sdk)

以 Facebook/ 开头的例外来自 Facebook SDK,以 FacebookAds 开头的例外来自 Marketing API SDK。

我完全理解这对于开发人员来说并不理想。但您也可以看到,我们为营销 API 提供单独的 SDK 的原因是因为我们的广告数据模型太复杂,我们需要一个更强大的类型 SDK 来帮助开发人员进行集成。由于多种原因,它无法构建在通用 Facebook SDK 之上。

所以现在,您还需要查看 Marketing API/SDK 和通用 Facebook SDK 的文档。我们会收到您的反馈,看看是否有机会改进。

© www.soinside.com 2019 - 2024. All rights reserved.