1

Google Web Play API を使用するためのアクセス トークンを取得しようとしていますが、うまくいきません。役立つエラー メッセージも表示されず、Google は何のサポートも提供していません。

https://developers.google.com/android-publisher/authorization

Client ID for web applications
Client ID:  37625491467222.apps.googleusercontent.com
Email address:  37625491467222@developer.gserviceaccount.com
Client secret:  XB5gwFt8w29Fs34540gr9urEGEmUHCLI
Redirect URIs:  http://www.kizbit.com/oauth2callback
JavaScript origins: http://www.kizbit.com

リフレッシュトークン: http://www.kizbit.com/oauth2callback?code=4/IAoP7JxYfe82KsuUwQRWQw2na_vreOM.MtjvGJqCG3IYshQV0ieZDarkfr1icAI

[root@308321 ~]# cat authcode.txt grant_type=authorization_code&code=4%2FIAoP7JxYfe82KsuUwQRWQw2na_vreOM.MtjvGJqCG3IYshQV0ieZDArkfr1icAI&client_id=37625491467222.apps.googleusercontent.com&client_secret=XB5gwFt8w29Fs34540gr9urEGEmUHCLI&redirect_uri=http%3A%2F%2Fwww.kizbit.com%2Foauth2callback

[root@308321 ~]# wget -S --post-file=authcode.txt  https://accounts.google.com/o/oauth2/token
--2012-06-28 01:08:37--  https://accounts.google.com/o/oauth2/token
Resolving accounts.google.com... 2001:4860:b007::54, 74.125.142.84
Connecting to accounts.google.com|2001:4860:b007::54|:443... connected.
HTTP request sent, awaiting response...
  HTTP/1.0 400 Bad Request
  Cache-Control: no-cache, no-store, max-age=0, must-revalidate
  Pragma: no-cache
  Expires: Fri, 01 Jan 1990 00:00:00 GMT
  Date: Thu, 28 Jun 2012 05:08:40 GMT
  Content-Type: application/json
  X-Content-Type-Options: nosniff
  X-Frame-Options: SAMEORIGIN
  X-XSS-Protection: 1; mode=block
  Server: GSE
2012-06-28 01:08:
37 ERROR 400: Bad Request.

鍵を渡してはいけないことはわかっていますが、機能しないので問題ありません。

リフレッシュトークンも機能しません。

ファイルをエンコードしないことも機能しません。

[root@308321 ~]# cat authcode2.txt
grant_type=authorization_code
code=4/IAoP7JxYfe82KsuUwQRWQw2na_vreOM.MtjvGJqCG3IYshQV0ieZDArkfr1icAI
client_id=37625491467222.apps.googleusercontent.com
client_secret=XB5gwFt8w29Fs34540gr9urEGEmUHCLI
redirect_uri=http://www.kizbit.com/oauth2callback

[root@308321 ~]# wget -S --post-file=authcode2.txt  https://accounts.google.com/o/oauth2/token
--2012-06-28 01:33:44--  https://accounts.google.com/o/oauth2/token
Resolving accounts.google.com... 2001:4860:b007::54, 74.125.142.84
Connecting to accounts.google.com|2001:4860:b007::54|:443... connected.
HTTP request sent, awaiting response...
  HTTP/1.0 400 Bad Request
  Cache-Control: no-cache, no-store, max-age=0, must-revalidate
  Pragma: no-cache
  Expires: Fri, 01 Jan 1990 00:00:00 GMT
  Date: Thu, 28 Jun 2012 05:33:47 GMT
  Content-Type: application/json
  X-Content-Type-Options: nosniff
  X-Frame-Options: SAMEORIGIN
  X-XSS-Protection: 1; mode=block
  Server: GSE
2012-06-28 01:33:44 ERROR 400: Bad Request.
4

1 に答える 1

0

これをどのように解決したかわかりません。私が行った可能性のあるいくつかのこと:

  1. Web ページの認可リクエストと同じ IP からアクセス トークン リクエストを行い、コードを取得します。
  2. wget -dSO- --post-fileデバッグに使用します。
  3. Web ページの承認後、アクセス トークンの要求を非常に迅速に行います。たぶん、コードは10mしか持続しませんか?
  4. Google API コンソールで Javascript オリジンにさらに IP を追加します。
  5. POST ファイルを再 URL エンコードし、末尾の改行を取り除きます。

とにかく、アクセス トークンと非常に重要なリフレッシュ トークンを取得したら、問題はありませんでした。

于 2012-07-04T22:27:14.363 に答える