Был когда-нибудь один из тех моментов, когда хочется танцевать цыпленок и сказать «да! да!!!" пока окружающие не почувствуют, что вы теряете зефир? Что ж, у меня был один из них через несколько минут после того, как я тщательно выяснил, как успешно загружать изображения с помощью VueJS в мою веб-службу Sails.

В самом деле, мне жаль, что я не нашел решения от сообщества Sails, но никто не отвечал мне, поэтому я разобрался (это не то, что мы делаем в основном как разработчики). Позвольте мне показать вам, как я это сделал!

Прелюдия - Паруса Экшен

Итак, у меня есть веб-сервис Sails и действия по загрузке (обратите внимание на мою статью, где я объясняю, почему я использую действия вместо контроллеров)

Итак, мое действие upload.js содержит следующий код:

Сторона Vue вещей

Теперь к мясу. Я обнаружил, что проблема не в Sails, а в моем браузере и моем коде Vue. Позволь мне показать тебе:

Мой шаблон P.S: Я использую SFC:

Выглядит довольно просто, правда? Но позвольте мне объяснить, как я к этому пришел. Во-первых, используя выборку, я обычно указываю тип содержимого моего запроса POST, но я обнаружил, что это происходит при использовании типа multipart / form-data , Кажется, Sails не получил доступ к полезной нагрузке. Почему? Я думаю, что это как-то связано с границей (механизм, который сервер будет использовать для получения отдельной части полезной нагрузки вашего запроса. Итак, что я сделал? Я позволил браузеру обработать это, не указав это в параметрах запроса. И это была серебряная пуля!



Заключение

Это был познавательный момент, и что мне действительно помогло, так это Клиент Advance Rest (ARC). Я наткнулся на него в поисках ответов, и после его использования для достижения конечной точки загрузки у меня возникла идея удалить тип контента и бац! Я понял!

Я надеюсь, что это поможет вам, и ищу новые рецепты Sails и Vue от меня. Также оставьте комментарий, если у вас есть вопрос. 😃

Узнайте о FormData здесь



Удачного развертывания 🚀 🚀 🚀