我试图删除我存储在事件中的一些属性。它适用于直接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,因为我没有足够的数据来填充此操作的对象。
修补程序仅更新您发送的值。
执行file.get并删除不仅需要文本的记录。
然后使用此对象执行修补程序。