POST-файл Node.js на сервер

Я пытаюсь написать приложение, которое позволит моим пользователям загружать файлы в мою учетную запись Google Cloud Storage. Чтобы предотвратить перезапись и выполнить некоторую пользовательскую обработку и ведение журнала на своей стороне, я использую сервер Node.js в качестве посредника для загрузки. Итак, процесс следующий:

  1. Пользователь загружает файл на сервер Node.js
  2. Сервер Node.js анализирует файл, проверяет тип файла, сохраняет некоторые данные в БД
  3. Сервер Node.js загружает файл на GCS
  4. Узел Ответ сервера .js на запрос пользователя с примечанием «пройдено/не пройдено»

Я немного запутался на шаге 3, как именно отправить этот файл в GCS.Этот вопросдает некоторую полезную информацию, а также хороший пример, но я все еще в замешательстве.

Я понимаю, что могу открыть ReadStreamдля временного загружаемого файла и передать его объекту http.request(). Что меня смущает, так это то, как я могу указать в своем POST-запросе, что передаваемые данные являются переменной file. Согласно GCS API Docsдолжна быть переменная file, и она должна быть последней.

Итак, как указать имя переменной POST для передаваемых данных?

Бонусные баллы, если вы можете сказать мне, как передать его прямо из загрузки моего пользователя, а не сохранять во временном файле

5
задан Community 23 May 2017 в 11:44
поделиться