Nodejs и swagger file upload: TypeError: Не удалось получить - PullRequest
0 голосов
/ 07 февраля 2019

РЕДАКТИРОВАТЬ

Я нашел свои ошибки.Я получил «TypeError: Failed to fetch», потому что я ничего не отправлял в своей функции контроллера.Поэтому замена console.log ("OK") на res.json ({"message": "Файл загружен"});исправил это.Но мое изображение все еще не загружалось, и это потому, что я не использовал __dirname в пути, где я хотел, чтобы изображение было сохранено.Я установил __dirname в своем файле app.js.


Я пытаюсь загрузить файл на свой сервер с помощью пакета express-fileupload npm.При тестировании с пользовательским интерфейсом Swagger я получаю следующую ошибку: «Ошибка ввода: ошибка загрузки», и мой файл не загружается в папку public / images

Вот мой чванец:

  /images:
    x-swagger-router-controller: images
    post:
      summary: Uploads a file.
      operationId: upload
      consumes:
        - multipart/form-data
      parameters:
        - in: formData
          name: upfile
          type: file
          description: The file to upload.
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SuccessResponse"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"

Вот мой контроллер изображений:

function upload(req, res, next) {

  let uploadFile = req.files.upfile;
  let fileName = uploadFile.name;
  uploadFile.mv( `../../public/images/${fileName}`, function (err) {
         if (err) {
         console.log("error", err)
         }
         console.log("OK")
         })
}

   module.exports = {
    upload,
};

Мое сообщение "ОК" действительно печатается в моей консоли.

Кто-нибудь знает, как решить эту проблему?

...