使用服务帐户验证 Google InAppPurchase
2022-08-30 20:45:21
我想验证在我的安卓应用中制作的。inAppPurchase
-
我在 Google API 控制台中创建了一个新的服务帐户。
一个。服务帐户列在权限下,并具有“可以查看”权限
-
来自我的PHP脚本的代码片段:
$client = new Google_Client(); $client->setApplicationName('myAppName' ); $client->setClientId('123456789123-vxoasdt8qwe6awerc9ysdfmjysdfysf64werweria8fh.apps.googleusercontent.com'); $key = file_get_contents('/shr/data/stor/b516cexx3123asdf3988345d8133e7f86bfas2553-privatekey.p12'); $service_account_name = '123456789123-vxoasdt8qwe6awerc9ysdfmjysdfysf64werweria8fh@developer.gserviceaccount.com'; $client->setScopes(array('https://www.googleapis.com/auth/androidpublisher') ); $cred = new Google_Auth_AssertionCredentials( $service_account_name, array('https://www.googleapis.com/auth/androidpublisher'), $key ); $client->setAssertionCredentials($cred); try { $service = new Google_Service_AndroidPublisher( $client ); $googleApiResult = $service->inapppurchases->get($externalAppId, $externalProductId, $purchaseToken); } catch (Exception $e) { var_dump( $e->getMessage() ); }
-
来自谷歌的回应:
GET https://www.googleapis.com/androidpublisher/v1.1/applications/de.test.myapp/inapp/de.test.inapp.google.balance5eur/purchases/[购买令牌]: (401) 当前用户没有足够的权限来执行所请求的操作。
[购买令牌]是我从谷歌收到的购买令牌
-
设置到我的邮件地址显示
$cred->sub = 'foo@bar.de'
刷新 OAuth2 令牌时出错,消息:“{ ”错误“:”unauthorized_client“、”error_description“:”请求中未经授权的客户端或作用域”。