1

DotNetOpenAuth4.2.0.13024を使用してGoogleのOAuth2トークンを取得する際に問題が発生しました。

Googleエンドポイントhttps://accounts.google.com/o/oauth2/authに承認リクエストを正常に送信できるようになりました

ユーザーが[OK]をクリックすると、Googleは適切な「コード」クエリ文字列を使用してコールバックURLを期待どおりに呼び出します。

ただし、このコードをトークンと交換することはできません。「プロトコル例外が処理されませんでした」という実行と、内部例外としての「400Badrequest」で呼び出しが失敗し続けるためです。これは私がトークンを交換するために使用しているコードです

private static AuthorizationServerDescription authServerDescription = new AuthorizationServerDescription
{
    TokenEndpoint = new Uri("https://accounts.google.com/o/oauth2/token"),
    AuthorizationEndpoint = new Uri("https://accounts.google.com/o/oauth2/auth")
};

static GoogleContacts()
{
    Client = new WebServerClient(authServerDescription, "{my_cliend_id}", "{me_secret_key}");
}

var authorization = Client.ProcessUserAuthorization(); // <- Exception is thrown here
if (authorization != null)
{
   Authorization = authorization;
   Response.Redirect(Request.Path); // get rid of the /?code= parameter
}

PS:DotNerOpenAuthの新しいバージョンがリリースされたようですが、zipダウンロードがまだ古いバージョンを指しているため、Nugetが失敗し続けるため、取得できません:(

4

0 に答える 0