OAuth2 и DotNetOpenAuth - реализация пользовательского клиента Google

У меня возникла проблема с реализацией пользовательского OAuth2Client для Google с использованием DotNetOpenAuth и MVC4.I '

добрался до точки, где я могу успешно сделать запрос авторизации к конечной точке Googlehttps://accounts.google.com/o/oauth2/auth

и Google спрашивает, разрешит ли пользователь моему приложению доступ к своей учетной записи. Пока все хорошо. Когда пользователь нажимаетХОРОШО'Google затем вызывает мой URL обратного вызова, как и ожидалось.

Проблема заключается в том, что я вызываю метод VerifyAuthentication для класса OAuthWebSecurity (Microsoft.Web.WebPages.OAuth).

var authenticationResult = OAuthWebSecurity.VerifyAuthentication(Url.Action("ExternalLoginCallback", new { ReturnUrl = returnUrl }));

Это's всегда возвращает AuthenticationResult сIsSuccessful = false и я'Provider = ""

мы изучили код для этого, и класс OAuthWebSecurity пытается получить имя поставщика из

Request.QueryString["__provider__"]

но Google не отправляет эту информацию обратно в строку запроса. Другой провайдер, которого я реализовал (LinkedIn), отправляет имя провайдера обратно, и все это прекрасно работает.

Я не уверен, что я могу сделать с этого момента, кроме как отказаться от классов Microsoft.Web.WebPages.OAuth и просто использовать DotNetOpenAuth без них, но я надеялся, что у кого-то может быть другое решение, которое я могу попробовать ...

я много искал, но могуКажется, я не нашел ничего, что могло бы помочь ...Мне действительно трудно даже найти примеры людей, делающих то же самое, что меня очень удивило.

Любая помощь высоко ценится! Я

Ответы на вопрос(2)

Ваш ответ на вопрос