Google Admin Report list API添加eventName过滤器返回500错误问题咨询
Google Admin Reports API 携带eventName返回500问题说明
问题原因
- 核心为Google服务端已知故障:Admin SDK Reports API的
activities.list接口存在后端逻辑bug,携带eventName参数请求时会触发内部服务错误,返回500状态码,该问题可通过官方测试工具复现,不属于用户端参数配置错误范畴。 - 示例代码存在参数错误:代码中连续调用两次
setStartTime方法,第二次错误传入结束时间值,该参数配置问题也可能叠加引发接口异常。
解决方案
- 最高稳定性临时方案:移除请求中的
eventName参数,调用接口获取全量活动数据后,在本地业务层按事件名称字段做过滤,完全规避服务端bug影响。 - 轻量临时方案:将过滤参数名从
eventName替换为下划线格式的event_name传入,目前该别名参数可正常触发服务端过滤逻辑,不会返回500错误。 - 代码修复:修正示例中的参数设置错误,正确设置结束时间,参考代码如下:
Reports.Activities.List list = Reports.activities().list(caller, activityName) .setOauthToken("accesstoken") .setMaxResults("1000") .setStartTime(startTime) .setEndTime(endTime) .setEventName("edit"); Activities result = list.execute();
- 长期方案:该问题已被Google官方收录进故障处理队列,待官方修复上线后,即可正常使用
eventName参数,无需额外调整业务代码。
内容的提问来源于stack exchange,提问作者Vishant Akhani
相关产品推荐
相关产品推荐

