gpt4 book ai didi

php - "403 Forbidden"来自 Google Android In App Purchases API 与服务帐户的响应

转载 作者:行者123 更新时间:2023-11-30 03:01:06 25 4
gpt4 key购买 nike

无法使用 native Google PHP 客户端使 Android In App Purchases API 使用服务帐户凭据。

我从 Google PHP 客户端包 (google\examples\service-account.php) 中获取了示例脚本,在其中提供了所有必需的凭据,它非常适合“图书”服务,但不适用于“Android 应用程序购买”。

下面的代码工作正常:

$client_id = '{SERVICE_CLIENT_ID}';
$service_account_name = '{SERVICE_ACCOUNT_NAME}';
$key_file_location = '{KEY_PATH}';

$client = new Google_Client();
$client->setApplicationName("Client_Library_Examples");

$service = new Google_Service_Books($client);
$scopes = array('https://www.googleapis.com/auth/books');
$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials($service_account_name, $scopes, $key);
$client->setAssertionCredentials($cred);

if($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion($cred);
}

echo '<pre>'; $results = $service->volumes->listVolumes('Henry David Thoreau', array('filter' => 'free-ebooks')); print_r($results); echo '</pre>';

作为 Google 的响应,下面的代码以“403 Forbidden”结尾:

$client_id = '{SERVICE_CLIENT_ID}';
$service_account_name = '{SERVICE_ACCOUNT_NAME}';
$key_file_location = '{KEY_PATH}';

$client = new Google_Client();
$client->setApplicationName("Client_Library_Examples");

$service = new Google_Service_AndroidPublisher($client);
$scopes = array('https://www.googleapis.com/auth/androidpublisher');
$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials($service_account_name, $scopes, $key);
$client->setAssertionCredentials($cred);

if($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion($cred);
}

echo '<pre>'; $results = $service->inapppurchases->get('{PACKAGE}', '{PRODUCT}', '{TOKEN}'); print_r($results); echo '</pre>';

我还使用 Web 帐户凭据进行了测试(当访问 token 由 Google 在“重定向”后提供的特殊“代码”生成时)。结果是一样的——403 Forbidden。

谁能提供任何线索,说明为什么 Android API 无法按预期工作?

最佳答案

好的,我找到了解决方案!

您必须将您的 API 与您的应用相关联。您必须转到您的 Google Play 发布页面 (https://play.google.com/apps/publish) 并在设置-> 用户帐户和权限-> 邀请新用户并授予其“查看财务报告”权限中使用服务帐户电子邮件邀请用户。

谢谢对我有用,祝你好运!

关于php - "403 Forbidden"来自 Google Android In App Purchases API 与服务帐户的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22513922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com