Мы создали два микросервиса, один из которых загружает изображения в хранилище Google (корзину) из node.js.И сервис, который возвращает serve_url из сервиса python.Обе службы работают.Почти ...
Наша проблема в том, что если у нас нет правильного ACL для файла в корзине, нам не разрешено получать serve_url () из сервиса изображений.
Мы загружаем изображения из внешнего интерфейса с помощью возобновляемой ссылки для загрузки, созданной в файловой службе node.js:
createResumeableUpload: async (filename, metadata) => {
const file = await bucket.file(filename);
const upload = await file.createResumableUpload({
metadata,
public: true,
});
return upload;
},
После проверки файла в корзине мы получаем allUsers с разрешениями чтения, см.изображение ниже.Но преобразование в сервисе изображений вызовет исключение из-за неправильных разрешений.
Если мы, однако, загрузим изображение непосредственно в интерфейс корзины, мы получим еще несколько разрешений, и после некоторого тестирования мы обнаружилиследующее разрешение - это то, что мы ищем - это редакторы, вторые в списке:
Мы много пытались установить ACL, когдамы создаем возобновляемую загрузку или файл после его создания, но ничего не получается.Мы были бы очень признательны, если бы кто-нибудь помог нам установить правильный ACL для файла, поэтому мы можем получить serve_url () из сервиса изображений.
[EDIT] Чтобы ответить на некоторые вопросы.Мы на 100% уверены, что это проблема с разрешениями, служба изображений работает нормально, если мы добавляем разрешение редактора, но мы должны иметь возможность добавить это разрешение, когда добавляем изображения в корзину.И это мой вопрос:
Как добавить разрешение владельца для редакторов, когда мы загружаем изображения в сегменты из нашего сервиса node.js?