Я пытаюсь программно с помощью libcurl переместить некоторый объект ресурса CalDAV (т.е. событие) из одной коллекции календаря в другую.
Я предположил, что метод MOVE для моей проблемы.У меня есть экземпляр Nextcloud, поэтому я попробовал следующий запрос в терминах оболочки:
$ curl -v -X MOVE -u bergentroll:password \
-H 'Destination: http://orangepi/remote.php/caldav/bergentroll/aux/Nextcloud-wafrjmzdgc7qxdv75drtrm.ics' \
http://orangepi/remote.php/caldav/calendars/bergentroll/personal/Nextcloud-wafrjmzdgc7qxdv75drtrm.ics
Коллекция Aux и объект ics оба существуют, но я получил исключение:
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:exception>Sabre\DAV\Exception\Conflict</s:exception>
<s:message>The destination node is not found</s:message>
</d:error>
Я попробовал пункт назначениябез протокола: // имя хоста, а также путь без имени файла, но каждый раз, когда я получаю одно и то же исключение.
Так подходит ли метод MOVE для этой цели и как достичь результата?
Я вижуследующая альтернатива MOVE: GET, DELETE, PUT;но это кажется уродливым и излишним.