Мое приложение использует silverstripe для управления большим количеством файлов для загрузки / доступа к ним и некоторыми реляционными метаданными.
Одно требование состоит в том, чтобы файлы были доступны извне через API.Для этого я настроил модуль Restfulserver (https://packagist.org/packages/silverstripe/restfulserver).
и расширил модель File, чтобы разрешить спокойный доступ:
class FileExtension extends DataExtension
{
...
private static $api_access = true;
...
}
Это позволяет мне получить и загрузитьфайл без проблем с помощью GET:
silverstripe/public/api/v1/Silverstripe-Assets-File/(ID)
, который дает мне необходимые данные для попадания в ресурсы / {hash} / (fileName) и загрузки файла.
Но это не такКажется, что не дает мне средства для POST файла. POSTing здесь просто создает запись файла, но без сопровождающего файла в папке активов. Ручное удаление файла в папке не работает, потому что на него не ссылается записьи не имеет ассоциированного хэша.
Так как же загрузить файлы без контроллера страницы?