2016-05-12 10 views
0

Iam caldav-client-v2.php Bibliothek auf Kalenderereignisse von iCloud Kalender,iCloud Kalender löschen Ereignisanforderungs arbeiten nicht mit caldav

GetEvents() Funktion gibt Reihe von Kalenderdaten Wich enthält lesen icsurl und etag, die den DoDELETERequest (href, ETAG) für deleteing Ereignis übergeben werden, dies für ownCloud Kalender funktioniert, aber wenn ich dies versuchen zu tun, für iCloud ist es nicht am Vorabend löscht nt und gibt den Fehler als 'Falschen Entity-Tag' den Tag ist so etwas wie dieses FT = - @ RU = 5c162550-1ccc-4821-80d6-e2fab587c348 @ S = 1685

Ich habe versucht, vorbei 5c162550 -1ccc-4821-80d6-e2fab587c348 an die Funktion, aber ich bekomme den gleichen Fehler. ist der Caldav-Server liefert falsche Etag oder wie kann ich es funktioniert?

Antwort

1

Ein ETag wird als Zeichenfolge in Anführungszeichen definiert, siehe RFC 7232, section 2.3. Dort heißt es:

ETag  = entity-tag 

entity-tag = [ weak ] opaque-tag 
weak  = %x57.2F ; "W/", case-sensitive 
opaque-tag = DQUOTE *etagc DQUOTE 
etagc  = %x21/%x23-7E/obs-text 
      ; VCHAR except double quotes, plus obs-text 

Das ist auch, wie Sie die ETags vom Server erhalten haben. Stellen Sie sicher, dass Sie das ETag genau so senden, wie Sie es erhalten. Entfernen Sie insbesondere keine Anführungszeichen.

Versuchen Sie also, "[email protected][email protected]=1685" stattdessen zu übergeben.

+0

Ja Sir, es ist wahr, die Libray entfernte Etag Zitate mit preg_replace, – rashidnk