0

こんにちは私はグーグルカレンダーAPIを使おうとしています。アクセストークンを取得できません。

現在使用しているコードは次のとおりです。

  private string ObtainAccessToken(string code)
    {
        string content =
                         "code=" + code + "&" +
                        "client_id=1016429729591.apps.googleusercontent.com&"+ 
                        "client_secret={MySecret}&" +
                        "redirect_uri=urn:ietf:wg:oauth:2.0:oob&" +
                        "grant_type=authorization_code";//authorization_code";
        Google.Apis.Authentication.HttpRequestFactory
                factory = new Google.Apis.Authentication.HttpRequestFactory();


        HttpWebRequest req = factory.Create(new Uri("https://accounts.google.com/o/oauth2/token?"+content), "POST");
        byte[] data = Google.Apis.Utilities.EncodeStringToUtf8(content);
        req.ContentLength = data.Length;

        req.ContentType = "application/x-www-form-urlencoded";

   req.GetRequestStream().Write(data, 0, data.Length);
        req.GetResponse();
    }

私がフォローしているAPIドキュメントはここにあります:https ://developers.google.com/accounts/docs/OAuth2InstalledApp

HTTP BadRequest400エラーが常に発生します。

私はこの質問で与えられた解決策を試しましたが、それも機能しません: Google Calendar API-不正なリクエスト(400)アクセストークンのコードを交換しようとしています

誰かが私がここで間違っていることを指摘できますか?

4

1 に答える 1

0

このサンプルを確認してください:http ://code.google.com/p/google-api-dotnet-client/source/browse/Tasks.SimpleOAuth2/Program.cs?repo = samples

これは、OAuth2.0を使用してTasksAPIリクエストを承認するコマンドラインアプリです。代わりにCalendarAPIを使用するように調整するのは非常に簡単です。

于 2012-05-15T02:41:31.060 に答える