Загрузка файла в Google Cloud Storage с помощью SignedUrl

Я пытаюсь загрузить изображения. У меня есть signedUrl в моем ведре, но я не могу сделать правильный HTTP-запрос на размещение. Я использую суперагентную библиотеку.

const req = superagent.put(url)
  .attach(file.name, file)
  .end();

Объект файла - https://developer.mozilla.org/en-US/docs/Web/API/File В конце URL-адрес - signedUrl с моего сервера. Без вложения я могу загрузить пустой файл. Но с вложением выдает ошибку http 403. Как я могу загружать файлы с этим signedUrl?


person Gotrank    schedule 21.05.2018    source источник
comment
Коды 403 - это когда сервер понимает вызов, но не удается выполнить авторизацию. Как вы генерируете подписанный URL-адрес, который вы передаете запросу?   -  person Federico Panunzio    schedule 12.07.2018


Ответы (1)


Я столкнулся с той же проблемой, потому что в моем запросе отсутствовал заголовок Content-Type. Попробуйте добавить это так:

const req = superagent.put(url)
  .attach(file.name, file)
  .set('Content-Type', file.type);
  .end();

Надеюсь, это поможет!

person Olivier Buffon    schedule 18.01.2019