Nextcloud, в котором происходит загрузка исходного файла
Я собираюсь сделать приложение. Но я застрял в одном выпуске. Я не могу найти, в каком файле nextcloud доступны коды, которые загружают файл. Я хочу найти файл, в котором находятся коды загрузки файлов.
Я собираюсь создать приложение, которое создаст дубликат загруженного файла и сохранит его в том же каталоге со слегка измененным именем.
1 ответ
Общедоступный API для обработки файлов находится в \OCP\Files
пространство имен, реализация находится в \OC\Files
пространство имен ( https://github.com/nextcloud/server/tree/master/lib/private/Files).
Вместо того, чтобы модифицировать этот код, вы должны использовать функцию ловушек (никогда не используйте классы или функции в \OC\*
пространство имен!): https://docs.nextcloud.com/server/12/developer_manual/app/hooks.html. Таким образом, вы можете выполнить свой собственный код при создании или обновлении файла и т. Д.
Я думаю, вам нужно postWrite
крюк. Пример кода (не проверен):
\OC::$server->getRootFolder()->listen('\OC\Files', 'postWrite', function(\OCP\Files\Node $node) {
$node->copy('my/path');
});