2016-11-25 57 views
0

我已經發送以下請求到iCloud日曆服務以獲取所有日曆列表。但是迴應總是空的。誰能幫我?iCloud日曆空回覆

請求:

GET /10232836851/calendars/F41F7478-4345-4A4A-8CD5-548122EF2C22/ HTTP/1.1 
HOST: pxx-caldav.icloud.com 
user-agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2 
authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXX== 
depth: 1 
content-type: text/xml 

響應頭:

Server: AppleHttpServer/a6f3179 
Date: Fri, 25 Nov 2016 07:35:53 GMT 
Content-Length: 0 
Connection: keep-alive 
Last-Modified: Wed, 23 Nov 2016 19:32:45 GMT 
Dav: 1, access-control, calendar-access, calendar-schedule, calendar-auto-schedule, calendar-managed-attachments, calendarserver-sharing, calendarserver-subscribed, calendarserver-home-sync 
Accept-Ranges: bytes 
X-Responding-Server: pv41p47ic-tydg09053001 23 a63660a6f7d1a25b5a7ed66dab0da843:44702101 
X-Transaction-Id: 55b238a2-548b-41fc-acc0-b697adb4ab84 
Cache-Control: private, max-age=0, no-cache 
Strict-Transport-Security: max-age=31536000; includeSubDomains 
Via: icloudedge:hk02p00ic-ztde010805:7401:16G8:Hong Kong 
X-Apple-Request-Uuid: 55b238a2-548b-41fc-acc0-b697adb4ab84 
Access-Control-Expose-Headers: X-Apple-Request-UUID; Via 
+0

最後我得到通過改變請求方法PROFIND響應。如何通過發送參數來過濾具有特定日期的日曆 – Gnanavadivelu

回答

1

要使用您使用CalDAV協議PROPFIND方法,而不是一個GET獲取服務器上的日曆列表。這在SabreDAV Building a CalDAV Client網頁中有很好的描述。

像這樣:

PROPFIND /calendars/johndoe/ HTTP/1.1 
Depth: 1 
Content-Type: application/xml; charset=utf-8 
Host: ... 
Authorization: ... 

<propfind xmlns="DAV:"> 
    <prop> 
    <displayname /> 
    </prop> 
</propfind>