Google 广告词 API。如何使用 PHP 库刷新令牌
Google Adwords API. How to refresh token with PHP library
让我从这里开始。 Google Adwords API 不适用于标准 Google API Oauth 方法。它有它自己的。请不要以使用该库或其不同的方法作为回应。
好的,在过去的几天里,我一直在将 GoogleAdwords API OAuth 方法代码集成到我公司的代码中。我可以毫无问题地从服务器获取访问和刷新令牌。访问令牌有效期为 1 小时,然后需要刷新。
// oauth 2 config
$credentials= array(
'client_id' => $config['id'],
'client_secret' => $config['secret'],
'access_token' => $params['access_token'],
'refresh_token' => $params['refresh_token']
);
$user = new \AdWordsUser(null, $adwords['dev_token'],
$adwords['useragent'], null, null, $credentials);
以上代码可以使用全新的令牌正常工作。如果我获取 $user
对象并尝试从 API 获取 CustomerService 对象,我可以取回数据。然而,一个小时后令牌变坏,我无法再使用它。
我搜索了 Google 的 Adwords API 论坛(通过 Google 论坛),并且还进行了一般性的 Google 搜索。我能找到的唯一代码是这段代码。
$client = $user->GetOAuth2Handler();
$credentials = $client->RefreshAccessToken($user->GetOAuth2Info());
$user->SetOAuth2Info($credentials);
但是当我添加它时,我总是得到这个错误。
{ "error" : "unauthorized_client" }
我完全不知所措...
另请注意,我不使用 auth.ini 我们使用自己的配置文件并将参数添加到 api 对象。
{ "error" : "unauthorized_client" }
此错误意味着指定了不同的 google 应用程序 client_id。我们使用多个 google 应用程序,我复制并粘贴了一些代码,忘记了对于 Adwords 我们使用的是新应用程序,我们集成的其他 google API 都使用同一个应用程序。
让我从这里开始。 Google Adwords API 不适用于标准 Google API Oauth 方法。它有它自己的。请不要以使用该库或其不同的方法作为回应。
好的,在过去的几天里,我一直在将 GoogleAdwords API OAuth 方法代码集成到我公司的代码中。我可以毫无问题地从服务器获取访问和刷新令牌。访问令牌有效期为 1 小时,然后需要刷新。
// oauth 2 config
$credentials= array(
'client_id' => $config['id'],
'client_secret' => $config['secret'],
'access_token' => $params['access_token'],
'refresh_token' => $params['refresh_token']
);
$user = new \AdWordsUser(null, $adwords['dev_token'],
$adwords['useragent'], null, null, $credentials);
以上代码可以使用全新的令牌正常工作。如果我获取 $user
对象并尝试从 API 获取 CustomerService 对象,我可以取回数据。然而,一个小时后令牌变坏,我无法再使用它。
我搜索了 Google 的 Adwords API 论坛(通过 Google 论坛),并且还进行了一般性的 Google 搜索。我能找到的唯一代码是这段代码。
$client = $user->GetOAuth2Handler();
$credentials = $client->RefreshAccessToken($user->GetOAuth2Info());
$user->SetOAuth2Info($credentials);
但是当我添加它时,我总是得到这个错误。
{ "error" : "unauthorized_client" }
我完全不知所措...
另请注意,我不使用 auth.ini 我们使用自己的配置文件并将参数添加到 api 对象。
{ "error" : "unauthorized_client" }
此错误意味着指定了不同的 google 应用程序 client_id。我们使用多个 google 应用程序,我复制并粘贴了一些代码,忘记了对于 Adwords 我们使用的是新应用程序,我们集成的其他 google API 都使用同一个应用程序。