6

我正在使用BingAds-PHP-SDK来获取经过身份验证的用户详细信息。

首先使用 OAuth成功完成身份验证并获取authentication tokenrefresh token.
但是当调用GetUser()返回以下时Exception

主要异常细节:

stdClass Object (
    [AdApiFaultDetail] => stdClass Object (
        [TrackingId] => bdfe1a94-b33f-xxxx-a542-1adc15148bae
        [Errors] => stdClass Object (
            [AdApiError] => stdClass Object (
                [Code] => 105
                [Detail] => 
                [ErrorCode] => InvalidCredentials
                [Message] => Authentication failed. Either supplied credentials are invalid or the account is inactive
           )
       )
   )
)

异常faultcodes:Server
异常faultstringInvalid client data. Check the SOAP fault details for more information

更详细的例子在这里

4

3 回答 3

2

我遇到了类似的错误。

我用了:

print $proxy->GetService()->__getLastRequest()."\n";
print $proxy->GetService()->__getLastResponse()."\n";

显示 SOAP 错误。

然后我看到错误是:用户不代表授权开发者

这导致我检查我的 AccountId 和 CustomerId是否正确。

于 2018-05-29T13:39:23.663 回答
2

Microsoft 帐户用户(对应于您的访问令牌)是否有权登录Bing Ads Web UI?可以为没有 Bing Ads 权限的 Microsoft 帐户获取访问令牌(因此 GetUser 会因设计而失败并出现 105 错误),因此请检查以确保该用户可以管理至少一个 Bing Ads 帐户。

如果 Microsoft 帐户用户具有 Bing Ads UI 访问权限,那么我建议联系支持人员以帮助解决 105 错误。在这种情况下,如果您提供对 SOAP 请求、响应和时间戳的支持,也会有所帮助。

我希望这有帮助!

于 2018-01-08T20:17:33.040 回答
1

有多个可能的问题可能导致您对 Bing API 的 SOAP API 请求因 105 个无效凭据而失败,其中一些问题可能与您传递给调用的 OAuth 信息无关(根据我的经验)。

需要检查的几件事:

  1. 您拥有具有通用访问权限的有效客户端应用程序设置
  2. 您使用在步骤 1 中创建的 App ID 正确请求了您的访问令牌和刷新令牌,并且您在请求中使用了正确的范围
  3. 您用于验证 OAuth 令牌请求中的范围的用户与用于生成开发人员令牌的用户相同
  4. 确保您的 SOAP URL 是正确的,并且您正在正确地进行身份验证并将 API 调用调用到正确的 URL。您可以使用 Fiddler(通过 SSL)对此进行测试,以确保您的 SOAP 信封和标头看起来格式正确并被发送到正确的端点 URL。
于 2019-11-14T22:34:30.830 回答