繁体   English   中英

Google Calendar API(Java)-创建Google Calendar Event时的时间格式无效

[英]Google Calendar API (Java) - Invalid time format when creating Google Calendar Event

我正在使用Java Google API客户端,并尝试创建Google Calendar Event。我的身份验证和日历服务初始化有效(我可以登录并获取我的日历事件)。 创建事件时发生问题。 这是我的代码:

    Event event = new Event();

    event.setSummary( title );

    event.setStart( new EventDateTime().setDate( new DateTime( new Date() ) ) );
    event.setEnd( new EventDateTime().setDate( new DateTime( new Date() ) ) );

    return _calendarService.events().insert( GOOGLE_CALENDAR_ID, event ).execute();

这是我得到的错误:

com.google.api.client.googleapis.json.GoogleJsonResponseException:400错误的请求{“代码”:400,“错误”:[{“域”:“全局”,“消息”:“的无效值:\\” T \\“找到,只能解析裸日期字符串:2014-10-10T15:58:06.165 + 03:00”,“ reason”:“ invalid”}],“ message”:“无效值:\\” T \\“找到,只能解析裸日期字符串:2014-10-10T15:58:06.165 + 03:00“}

有任何想法我在这里做错了吗?

问题是您正在执行setDate()并传入dateTime(然后将“ T15:58:06.165”添加到您的日期)。 如果需要定时事件,可以执行EventDateTime().setDateTime() ,如果不需要,可以执行以下操作:

new EventDateTime().setDate(new DateTime(true, new Date(), 0));

文档所述 ,如果未使用setTimeZone方法在EventDateTime对象上设置时区(并且在您的情况下未设置),则需要将时区传递给DateTime对象。

因此,要么创建新的DateTime对象(包括时区),要么创建新的EventDateTime对象并设置其时区,然后EventDateTime服务器发送请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM