7

Google OAuth 2 を実装して Google API にアクセスしようとしています。サーバー側のシナリオを使用して、このガイドに従います。

コードの取得に問題はありません。サーバーは localhost にリダイレクトします (現在、リダイレクト URI で許可されている唯一のサーバーです)。これを達成するために、https://accounts.google.com/o/oauth2/auth?client_id=whatever.apps.googleusercontent.com&redirect_uri=http://localhost/&scope=https://www.google.com/m8/feeds/&response_type=codeページに移動します。

次に、curl(ガイドのように) を使用して、Google のサーバーがアクセス トークンで応答するかどうかをテストしてみました。しかし、それは非常に難しいようです。私が得ることができる唯一の応答はです{"error":"invalid_client"}。コード、クライアント ID、クライアント シークレット、リダイレクト URI (localhost) grant_type=authorization_code、.

curlコマンドライン全体は次のとおりです。

curl https://accounts.google.com/o/oauth2/token -d "code=<code>&client_id=whatever.apps.googleusercontent.com&client_secret=<won't tell!>&redirect_uri=http://localhost&grant_type=authorization_code"

何か不足していますか?アクセス トークンのコードを交換するにはどうすればよいですか?

4

3 に答える 3

3

あなたはurlencodeあなたのクライアントを秘密にしてURLをリダイレクトしましたか?それは私にとってはうまくいきます。

http%3A%2F%2Flocalhostの代わりになりhttps://localhostます。

于 2011-04-14T21:29:41.007 に答える
3

iOS用に作成したクライアントIDに接続しようとしていることに気付くまで、同じエラーが発生しました。したがって、私にとっての解決策は、プラットフォームを「その他」に設定して、 API コンソールで新しい API キーとシークレットのペアを作成することでした。

現在、他のエラーが発生していますが、それは別の話です。;)

于 2012-06-29T19:20:11.307 に答える