我正在尝试删除事件中存储的某些属性。直接调用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,因为我没有足够的数据来填写此操作的对象。
答案 0 :(得分:1)
仅修补您发送的值。
执行一个文件。获取并删除您不想要的记录,而不仅仅是文本。
然后使用该对象执行补丁。