使用Java库删除Google Calendar自定义属性

时间:2018-09-12 15:53:34

标签: java google-calendar-api

我正在尝试删除事件中存储的某些属性。直接调用API可以正常工作:

PATCH https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId
{
  "extendedProperties": {
    "private": {
      "petsAllowed": null
    }
  }
}

示例取自此处:https://developers.google.com/calendar/extended-properties#deleting

但是,当我使用Java库时,它什么也没做:

PATCH 
ExtendedProperties extendedProperties = new ExtendedProperties();
extendedProperties.getShared().putIfAbsent(key, null);
originalEvent.setExtendedProperties(extendedProperties); 

修补程序之后,即使我为它们的键发送了空值,我仍旧有未删除的自定义属性。

我怀疑是Google Java Library处理PATCH请求背后的一般机制问题。它可能会剪切所有空值。

您知道我删除属性的解决方法吗?我无法使用UPDATE,因为我没有足够的数据来填写此操作的对象。

1 个答案:

答案 0 :(得分:1)

仅修补您发送的值。

执行一个文件。获取并删除您不想要的记录,而不仅仅是文本。

然后使用该对象执行补丁。