修补谷歌事件开始日期和结束日期,而无需所有必要的数据
问题描述:
我实现客户端,可以补丁谷歌日历事件通过Calendar API v3 Client Library for Java.修补谷歌事件开始日期和结束日期,而无需所有必要的数据
方法:
com.google.api.services.calendar.Calendar.Events#patch
的问题我面对的是start
和end
字段在com.google.api.services.calendar.model.Event
实体是复杂的对象,并需要构建几件事情:
com.google.api.client.util.DateTime
TimeZone
的DateTime三个字段dateOnly
被设置为真/假取决于事件是否为全天事件与否。问题出现了。如果我只想更新日期,并且只有日期从我的前端发送(没有标志是全天事件还是dateOnly
适用),我无法构造DateTime
对象,因为我不知道是否我应该使用DateTime
的构造函数,将dateOnly
设置为true或设置为false。
如果有请求,这是正确的。由于我们有PATCH,所以我们可以更新特定的字段,甚至不用接触其他字段。但是,在这种情况下,由于该领域相当复杂,因此很难找到更新dateOnly
标志的方式,而是更新update
值或tzShift
。
我认为每次做补丁时都会从谷歌加载事件。因此,我可以读取并设置dateOnly
标志为旧值。有没有更方便的方法来解决这个问题?
答
根据Events的文档,没有dateOnly找到资源。 但可以使用补丁Events: patch
{
"start": {
"date": "2017-05-05",
"dateTime": "",
"timeZone": "America/Los_Angeles"
},
"end": {
"date": "2017-05-06",
"dateTime": "",
"timeZone": "America/Los_Angeles"
}
}
希望它可以帮助您使用以下选项。