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

问题描述 投票:1回答:1

我试图删除我存储在事件中的一些属性。它适用于直接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); 

在修补程序之后,即使我为其键发送了空值,我仍然会删除旧的自定义属性。

我怀疑这是谷歌Java库处理PATCH请求的一般机制问题。它可能会删除所有空值。

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

java google-calendar-api
1个回答
1
投票

修补程序仅更新您发送的值。

执行file.get并删除不仅需要文本的记录。

然后使用此对象执行修补程序。

© www.soinside.com 2019 - 2024. All rights reserved.