Vue JS как принять формат URL-кода

#javascript #vue.js #vuejs2 #vue-component #vuex

Вопрос:

Я пытаюсь принять формат с кодировкой URL в postman для отправки некоторых данных в приложение Vue JS, я использую формат с кодировкой ниже, как я могу достичь этого, какой пакет npm я должен использовать?

введите описание изображения здесь

Комментарии:

1. Вы спрашиваете, как получить POST данные из приложения Vue в таком формате?

Ответ №1:

вы можете использовать axios

 const axios = require('axios')


const params = new URLSearchParams()
params.append('name', 'Akexorcist')
params.append('age', '28')
params.append('position', 'Android Developer')
params.append('description', 'birthdate=25-12-1989amp;favourite=coding coding and codingamp;company=Nextzy Technologiesamp;website=http://www.akexorcist.com/')
params.append('awesome', true)

const config = {
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded'
  }
}

axios.post(url, params, config)
  .then((result) => {
    // Do somthing
  })
  .catch((err) => {
    // Do somthing
  })
 

Ответ №2:

x-www-form-urlencoded данные отправляются через HTTP-заголовки

Большинство HTTP-заголовков не видны вашему интерфейсному приложению JavaScript. Они видны только серверу, отвечающему на запрос. Вы не можете прочитать их непосредственно из JavaScript, запущенного в веб-браузере.

Однако есть и другие варианты…

  • Измените источник; измените запрос POST на GET и закодируйте параметры в URL-адресе
  • Обратный прокси-сервер для вашего приложения может преобразовываться из параметров POST для получения параметров с некоторым дополнительным кодированием или конфигурацией
  • Получите запрос на своем сервере и отправьте его в свой Vue.js приложение; используйте что-то вроде php/asp/etc для обслуживания вашего html вместо статических HTML-файлов и встраивайте опубликованные параметры в сгенерированную HTML-страницу

Если вы креативны, могут быть и другие варианты, но самый простой — первый-просто измените источник, чтобы он больше не публиковал данные.

Ответ №3:

Я решил эту проблему, добавив промежуточное программное обеспечение(код на стороне сервера, такой как .net web API), а затем перенаправил его с помощью строки запроса)