2

我正在尝试使用来自 Google 的 .NET API https://code.google.com/p/google-api-dotnet-client/ https://www.nuget.org/packages/Google.Apis.Authentication/

由于 Google 提供的大多数这些 API 都需要 oAuth 令牌才能从中获取任何数据,因此我正在努力克服这第一个障碍。

我的计划是创建一个非常简单的 .NET Web API,通过 API 列出我的 Google Analytic 的帐户,然后我可以使用 AngularJS 将我的 WebAPI 调用返回的 JSON 绑定到一个漂亮的小视图。

我提到的问题是,似乎有很多不同的例子漂浮,我似乎无法工作。它已经过时或示例项目无法编译等...

据我了解,我需要将 Authenticator 对象传递给 BaseClient 对象,该对象又用于任何服务 API。

下面是一个粗略的示例,我正在尝试开始工作,但由于我没有登录/传递 oAuth 令牌,目前失败并从 Google 的 API 返回错误。任何人都可以给我任何指示或建议。

谢谢,沃伦

[HttpGet]
public IEnumerable<Account> GetAccounts()
{
    var baseClient              = new BaseClientService.Initializer();
    baseClient.ApplicationName  = "Google Stats Example";
    baseClient.Authenticator    = null; //Unsure how to get the oAuth token

    AnalyticsService stats      = new AnalyticsService(baseClient);
    var accounts                = stats.Management.Accounts.List();
    var allAccounts             = accounts.Execute();

    return allAccounts.Items;
}
4

1 回答 1

1

要创建身份验证器,您需要一个名为“Google APIs OAuth2 客户端库”的 nuget 包,但我下载了一个名为“Google.Apis.Oauth2.v2 客户端库”的 nuget 包。名称相似但不相同。

我无法在金块页面上找到正确的。如果您对该包执行搜索,它将不会显示。我必须使用 Visual Studio Nugget 搜索器并激活“显示 prerealese 包”来安装它。

于 2013-09-22T20:40:25.017 回答