【发布时间】:2015-06-10 03:05:56
【问题描述】:
无限循环错误。
我花了太多时间在 Google 的关于在桌面应用程序中实现其云服务的非常糟糕的 API 文档中转圈。
第一个主要问题,似乎我必须以某种方式使用 Oauth2 以获得额外的客户端凭据(我必须使用刷新令牌更新/刷新,因为这也会发生变化)——因为显然 API 凭据不是足以进行充分的沟通。
https://cloud.google.com/dns/api/authorization
有人可以举一个在 WinForms 应用程序中使用 C# .NET 的示例,该应用程序使用 rest 或 Google .NET API 库来建立所需的 OAuth2 令牌数据/等,这些数据随后将用于访问所有这些 API。
https://cloud.google.com/dns/api/v1/managedZones
请 ---- 没有 gcloud.exe 的东西。期望客户下载庞大且过于复杂的安装程序只是为了获得该工具是不切实际的。 :)
【问题讨论】:
-
您介意描述一下您的应用实际在做什么吗?根据您的用例,您可能想要使用服务帐户 - 相对容易使用。如果您需要社区的帮助,我还建议您发布您迄今为止所做的工作。
-
那么用户将使用自己的帐户访问 Cloud DNS 还是提供服务(您将在您的帐户中为他们托管 dns)?我的问题主要旨在了解谁/什么将被认证。在第一个用例中,您基本上是为 CloudDNS 设置创建 UI。在后一种情况下,您将成为服务提供商。
-
好的,我已经有一段时间没有使用 C# 进行此操作了,但是如果您发布与 oauth2 身份验证相关的代码,我可能会向您提示正确的方向。
-
对,所以我建议您按顺序阅读一些文献: oauth2 如何适用于已安装的应用程序:developers.google.com/identity/protocols/OAuth2InstalledApp 以developers.google.com/api-client-library/dotnet/get_started 开头的简单示例@ 示例实现:github.com/google/google-api-dotnet-client-samples
-
实际上并非如此,而且您坚持认为文档很烂也无济于事(主要是因为我已经知道了)。第一:是的,用户必须与 google 交互才能验证您的应用程序 - 使用 oauth 无法解决这个问题。如果你找到一个你打破它。当用户登录并且您的应用程序获得授权时会发生什么取决于您提供的 redirect_url。您可以让 google 将信息发送到您的应用程序,或者让用户将身份验证代码复制到您的应用程序中。完成后,您可以向 google 请求刷新令牌。
标签: c# api rest google-app-engine dns