alexjet73
@alexjet73

Возможна ли отправка файла blob из JS на сервера ВК?

Собственно сабж. Реально ли отправлять прямо с приложения посредством JS файл на URL полученный методом docs.getUploadServer, например. Сейчас выход нашел только один, это посылать Blob файл на сервер вместе с URL и токеном юзера, а уже оттуда посредством cURL отправлять на сервер ВК.

Возможно кто то реализовал подобное или это не возможно из-за ограничений JS и ВК?
  • Вопрос задан
  • 321 просмотр
Пригласить эксперта
Ответы на вопрос 1
@GrayHorse
Наверное, мой ответ не то, что нужно, но раз тут и так пусто:

Не знаю, что имеется под приложением, но отправять нужно именно File, не Blob (хотя его можно использовать для при загрузке изображений). File это тот же Blob, с двумя дополнительными полями.
Например, код на JS:

url = "https://pu.vk.com/...";

(async (url) => {

    const formData = new FormData();

    const blob = new Blob([new Uint8Array(1 * 1024 * 1024)], { type: "text/plain" });    
    const file = new File([blob], "qwerty.txt");
    
    formData.append("file", file);
    
    console.log(await (await fetch(url, { method: "POST", body: formData })).json());
    // { file:  "..." }

})(url);

Только в браузере это работать не будет, т.к. CORS. (Или будет, если запускать как контент/бекграунд скрипт (расширение))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы