.NET Core 未找到 GoogleWebAuthorizationBroker 异常
GoogleWebAuthorizationBroker not found exception with .NET Core
我正在尝试访问 Google 驱动器 API,我可以使用 Google+ API 成功登录用户。我一直在关注这个指南:
https://developers.google.com/drive/v3/web/quickstart/dotnet
我用 nuget 包管理器添加了所需的库,但它仍然找不到 GoogleWebAuthorizationBroker class。奇怪的是,当我将相同的 Google.Apis.Auth 包版本 1.18.0 添加到一个简单的控制台应用程序时,它可以完美运行,但是当我将它添加到我的 .NET Core 1.0 预览版 2 项目时,它根本无法识别前面提到的 class.
包含添加包的屏幕截图:
我的 .NET Core 源代码(这里找不到 class):
我的控制台应用程序源代码和参考资料(class 出于某种原因可以在这里找到):
提前致谢!
您的控制台应用程序运行正在完整的 .net 框架上运行。这就是 GoogleWebAuthorizationBroker 在那里得到解决的原因。
我在针对 .net 核心的 Google.Apis 方面遇到了同样的问题,我最终 运行 在完整的 .net 框架之上构建了 asp.net 核心项目。当 Google 组件工作时,我计划将框架切换回 .net 核心。
我用这样的 461 框架替换了 dotnet 框架:
"frameworks": {
"net461": {}
}
而且我还不得不像这样评论 out/remove 对 Microsoft.NETCore.App 的依赖:
"dependencies": {
"Google.Apis": "1.19.0",
"Google.Apis.Auth": "1.19.0",
"Google.Apis.Calendar.v3": "1.19.0.675"
//"Microsoft.NETCore.App": "1.1.0-preview1-001100-00",
},
您也可以 运行 针对这两个框架 - 我试过这样做,当您发布网站时,您会
DOTNET PUBLISH -f 461
或
DOTNET PUBLISH -f netcoreapp1.0
取决于框架。
然后,您还必须从 visual studio 的下拉列表中 select,您 运行 反对的框架,这最终成为一个更大的问题。更容易在不需要时注释掉 dotnetcore1.0 框架,然后在我的构建管道上发布 dotnet ...
Google .net apis github 页面上有一个关于 .net 核心兼容性的帖子。 https://github.com/google/google-api-dotnet-client/issues/872#issuecomment-259710682
这些 类 的预期支持估计在 2017 年初。
希望对您有所帮助?
我正在尝试访问 Google 驱动器 API,我可以使用 Google+ API 成功登录用户。我一直在关注这个指南:
https://developers.google.com/drive/v3/web/quickstart/dotnet
我用 nuget 包管理器添加了所需的库,但它仍然找不到 GoogleWebAuthorizationBroker class。奇怪的是,当我将相同的 Google.Apis.Auth 包版本 1.18.0 添加到一个简单的控制台应用程序时,它可以完美运行,但是当我将它添加到我的 .NET Core 1.0 预览版 2 项目时,它根本无法识别前面提到的 class.
包含添加包的屏幕截图:
我的 .NET Core 源代码(这里找不到 class):
我的控制台应用程序源代码和参考资料(class 出于某种原因可以在这里找到):
提前致谢!
您的控制台应用程序运行正在完整的 .net 框架上运行。这就是 GoogleWebAuthorizationBroker 在那里得到解决的原因。
我在针对 .net 核心的 Google.Apis 方面遇到了同样的问题,我最终 运行 在完整的 .net 框架之上构建了 asp.net 核心项目。当 Google 组件工作时,我计划将框架切换回 .net 核心。
我用这样的 461 框架替换了 dotnet 框架:
"frameworks": {
"net461": {}
}
而且我还不得不像这样评论 out/remove 对 Microsoft.NETCore.App 的依赖:
"dependencies": {
"Google.Apis": "1.19.0",
"Google.Apis.Auth": "1.19.0",
"Google.Apis.Calendar.v3": "1.19.0.675"
//"Microsoft.NETCore.App": "1.1.0-preview1-001100-00",
},
您也可以 运行 针对这两个框架 - 我试过这样做,当您发布网站时,您会
DOTNET PUBLISH -f 461
或
DOTNET PUBLISH -f netcoreapp1.0
取决于框架。 然后,您还必须从 visual studio 的下拉列表中 select,您 运行 反对的框架,这最终成为一个更大的问题。更容易在不需要时注释掉 dotnetcore1.0 框架,然后在我的构建管道上发布 dotnet ...
Google .net apis github 页面上有一个关于 .net 核心兼容性的帖子。 https://github.com/google/google-api-dotnet-client/issues/872#issuecomment-259710682
这些 类 的预期支持估计在 2017 年初。
希望对您有所帮助?