当前位置:  开发笔记 > 编程语言 > 正文

Google AnalyticsAPI会因证书而丢失500内部服务器错误(服务帐户)

如何解决《GoogleAnalyticsAPI会因证书而丢失500内部服务器错误(服务帐户)》经验,为你挑选了0个好方法。

我正在使用Google Analytic API来获取数据.我从最近1年获取数据没有任何问题.但是,从昨天开始,服务器在API调用上出现以下错误: -

Google.GoogleApiRequestException: Google.Apis.Requests.RequestError Backend Error [500] Errors [Message[Backend Error] Location[ - ] Reason[backendError] Domain[global] ] ---> System.Net.WebException: The remote server returned an error: (500) Internal Server Error.

另一个值得注意的事情是,当我在调用API时不断在生产服务器上遇到上述错误.那次我尝试从本地机器/舞台机器使用相同的代码和证书进行相同的API调用,并且每次都正常工作.

意味着我现在可以在我的本地和舞台上获得具有相同代码和服务帐户的所有数据.

请找到以下代码:

 private static GaData executeDataQueryForCustomDimension(Analytics analytics, String profileId,Map reqMap)  {
      GaData gaData = new GaData();
      String startDate = (String) reqMap.get("fromDate");
      String toDate = (String) reqMap.get("toDate");
    try {
        gaData = analytics.data().ga().get("ga:" + profileId, // Table Id.
                startDate, // Start date.2015-01-01
                toDate, // End date.2015-07-07
            "ga:visits") // Metrics.
            .setDimensions("ga:pagePath")
          .setMetrics("ga:timeOnPage")
          .setFilters("ga:pagePath!~^/[-a-zA-Z0-9]+/[-a-zA-Z0-9]+/;ga:pagePath!@login;ga:pagePath!@admin;ga:pagePath!@.com;ga:pagePath!@p_p_id;ga:pagePath!@?;ga:pagePath!@blog;ga:pagePath!@add-review;ga:pagePath!@.html;ga:pagePath!@manufacturer/;ga:pagePath!@product-evaluations;ga:pagePath!@product;ga:pagePath!@request-more-info;ga:pagePath!@video/;ga:pagePath!@categories/")
            .setStartIndex(1)
          .setMaxResults(40000)
            .execute();
    } catch (Exception e) {
        e.printStackTrace();
        logger.error("Error getting data",e.getMessage());
    }

      return gaData;
  }

我也尝试过指数退避(延迟)来调用服务器上的API.但是,这可以帮助我达到5到10个电话.但在那之后,我有同样的错误.同样的事情是每次都在我的本地机器/舞台上工作.

我在谷歌提供的分析仪表板上点击,但是每当我从生产中打电话时都会出错.

如果有人知道这个问题以及如何解决这个问题,请告诉我.

使用以下版本的API,


            com.google.apis
            google-api-services-analytics
            v3-rev116-1.19.1
        
        
            com.google.http-client
            google-http-client-gson
            1.20.0
        

我就是那个发起呼叫的人.所以在几秒钟内没有最大呼叫,因为我在测试时每秒钟服务器一次.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有