AggregateException when calling GetApplicationDefaultAsync()
本文关键字:GetApplicationDefaultAsync calling when AggregateException | 更新日期: 2023-09-27 17:59:59
我正在尝试运行示例Vision API项目。我基本上将代码Program.cs
复制并粘贴到我的应用程序中并执行它。
此行(即 Program.cs
中的 #36-#37 行(
GoogleCredential credential = GoogleCredential.GetApplicationDefaultAsync().Result;
与Additional information: One or more errors occurred.
一起mscorlib.dll
抛出System.AggregateException
.
通过检查InnerException
,我发现实际抛出的异常是用Error deserializing JSON credential data.
InvalidOperationException
的。
是一个基本项目,具有服务帐户和启用了云视觉 API,仅此而已。我通过编写以下内容检查了我的环境变量是否设置为 JSON 文件:
Console.WriteLine(Environment.GetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS"));
在上面一行之前。它的输出(就在崩溃之前(是(类似(:
C:'Users'me'Documents'Projects'MyProject'MyProject-ba31aae6efa1.json
我检查了该文件,这是我启用服务帐户时获得的文件。它中的每个属性看起来都很好(即项目名称正确,路径正确,...
我安装了 Google Cloud SDK,并对我的云帐户执行了gcloud beta auth application-default login
和授权访问权限。
关于可能导致这种情况的原因的任何想法?
通过检查详细的构建日志,我发现Google API的软件包依赖于Newtonsoft.Json
版本9.0.1
(在撰写本文时是最新的(。
无论出于何种原因,Google API软件包都依赖于Newtonsoft.Json
版本7.0.0
。
软件包附带了错误的版本!
安装最新版本(在本例中为9.0.1
(可解决此问题。