【问题标题】:Google .net API v3 class OAuth2LeggedAuthenticator equivalentGoogle .net API v3 类 OAuth2LeggedAuthenticator 等效项
【发布时间】:2013-09-15 17:12:02
【问题描述】:

我目前正在开发一个 C# MVC 网站,该网站将使用 Google 的日历 API,但我在整理 OAuth 2.0 时遇到了麻烦。

我正在关注这个 stackoverflow question,它引用了最新的 NuGet 包中没有出现的 OAuth2LeggedAuthenticator

Install-Package Google.Apis.Calendar.v3 -Pre

Install-Package Google.Apis.Authentication -Pre

这是因为 Google 已迁移到 OAuth 2 身份验证架构,所以有没有办法使用最新版本的 .net API 进行 2 腿身份验证?

干杯

【问题讨论】:

    标签: c# .net oauth-2.0 google-calendar-api google-api-dotnet-client


    【解决方案1】:

    设法弄清楚,获取“服务帐户”(即您自己的帐户)访问权限的过程有些不同。

    当您在 Google 控制台中创建新的 Oauth2 客户端 ID 时,它会生成带有私钥的证书,允许您的应用程序访问您自己的帐户。

    因此,您使用 AssertionFlowClient 类而不是 NativeApplicationClient 作为 API 访问提供者并将您的证书作为参数传递。

    var provider = new AssertionFlowClient(GoogleAuthenticationServer.Description, certificate) 
    

    更多信息和示例可以在Google Code.net wiki 上找到

    Google 确实应该在那里更新 Google 开发人员指南,因为它已经过时了,而且在获取有关新的 .net V3 API 的信息方面有点费力......

    【讨论】:

    • 哪个部分过时了?你缺少什么?请注意,在我们的下一个版本中,我们将显着改进 OAuth2 流程。我们将使它更易于使用。我知道今天情况很复杂,我们正在努力解决这个问题。如果某些内容已过时,请随时在我们的问题跟踪器 (code.google.com/p/google-api-dotnet-client/issues/list) 中打开问题。谢谢
    • 我已将问题添加到列表中,只是 developer.google.com 示例代码不再有效,而正确的示例代码位于 code.google.com wiki
    【解决方案2】:

    DotNetOpenAuth 可能会帮助您获得身份验证。在获得access_token(DotNetOA 将帮助您获得)后,您将能够调用他们的 API。

    【讨论】:

      猜你喜欢
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 2014-08-29
      • 1970-01-01
      • 2012-07-17
      • 2020-09-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多