创建新事件到iCloud Apple日历始终结果400错误请求

目前,我正在开发一个网站,它将Apple Calendar中的数据同步到我的应用程序,反之亦然。

为了从Apple Calendar获取数据到我的应用程序,我已经可以从iCloud日历中获取.ics文件,它可以正常工作。

但是,在Apple Calendar中创建新事件时出现问题。 不知何故,我发送的每个请求都会导致400 Bad Request

以下是请求的详细信息:

  1. 标题: If-None-Match: *
  2. 方法: PUT
  3. Uri目的地: https://p46-caldav.icloud.com/[USER_ID]/calendars/work/dfsfsdfsfsfsfsdfsdfsdf.ics ://p46-caldav.icloud.com/[USER_ID]/calendars/work/dfsfsdfsfsfsfsdfsdfsdf.ics
  4. 内容类型: text/calendar
  5. Apple Id和App Specific Password使用NetworkCredential设置。 这适用于从Apple Calendar获取数据,因此我认为这不是问题的根源。 这是它的httpWebRequest.Credentials = new NetworkCredential(username, password);代码: httpWebRequest.Credentials = new NetworkCredential(username, password);
  6. 对于请求内容,实际上我已经尝试了很多东西。 在这里,我将从RFC 4791中设置一个

BEGIN:VCALENDAR VERSION:2.0 PRODID:-//Example Corp.//CalDAV Client//EN BEGIN:VEVENT UID:20010712T182145Z-123401@example.com DTSTAMP:20060712T182145Z DTSTART:20060714T170000Z DTEND:20060715T040000Z SUMMARY:Bastille Day Party END:VEVENT END:VCALENDAR

谁知道什么可能是错的?