类型Google.apis.auth.oauth2.serviceaccountcredential中的方法interc



我将错误消息放在标题中,因为我对Web进行了评分,并且找不到任何其他人遇到此问题的实例。

我正在尝试使用Google .NET API访问分析数据,如下所示:http://www.toplinestrategies.com/dotneters/net/accessing-anccessing-and-querying-and-querying-google-google-google-google-analytics-via-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-service-ro-in-帐户-C/?lang = en

我遵循了所有内容,创建了凭据,指向密钥文件和密码,并将电子邮件地址用作客户端ID。

,但很奇怪的是,当我执行页面时,它立即失败,标题中的错误。

有问题的代码线似乎是这样的:

    var credential = new ServiceAccountCredential(
       new ServiceAccountCredential.Initializer(clientId)
       {
           Scopes = new[] { scope }
       }.FromCertificate(certificate));

如果我删除了该行,则页面不会导致异常,但是如果我添加,它会立即失败。

,但它完全跳过该页面上的任何断点,所以我什至无法介入错误是什么或位置,好像它在页面甚至加载之前正在执行。

我怀疑这是不好的凭据,但是如果我运行提琴手,我发现没有传递给Google或任何地方的流量,它会立即失败。

这很令人沮丧,有人看到了吗?有什么想法可能出了什么问题?真正让我感到愤怒的部分是,如果我在页面上的任何地方设置一个断点,即使在失败的代码之前,它也不会触时,但立即失败,跳过我的所有断点,怎么会呢?

键的路径是正确的,密码正确,并且电子邮件客户端ID是正确的,我对其进行了三次检查,这也不是问题所在,因为它甚至从未尝试过与Google联系。

我认为也许是读/文件权限到密钥的权限,但我可以完全访问文件中的每个人,x509certificate2正确加载了...

那么,这里还有什么可能是错误的?

谢谢

事实证明,代码的有问题的线是Web.config中的这一数字:

  <dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
  </dependentAssembly>

bin文件夹中的system.net.http的版本实际上是2.1.10。不确定为什么这不会使整个站点崩溃,而不是一个随机组件,而是将其删除,完全解决了问题

相关内容

最新更新