Рубрики
Без рубрики

Как отправить данные в кодировке url с помощью Axios

Узнайте, как отправлять данные в кодировке url с помощью Axios

У меня была такая проблема: API, который я должен был вызвать из Node.js приложение принимало данные только в формате urlencoded.

Мне нужно было решить эту проблему: как отправлять данные в кодировке url с помощью Axios?

Первое, что нам нужно сделать, это установить модуль qs . Это классная библиотека для анализа и упорядочивания строк запросов с некоторой дополнительной безопасностью:

npm install qs

Затем нам нужно импортировать модуль qs вместе с импортом Axios, конечно:

const qs = require('qs')
const axios = require('axios')

Если вы используете модули ES, использовать

import qs from 'qs'
import axios from 'axios'

Далее, код Axios. Проверьте мой полный учебник по Axios, если вы с ним не знакомы.

Короче говоря, нам нужно использовать полную форму для запроса Axios. Не axios.post() но аксиос() .

Внутри мы используем метод stringify() , предоставляемый qs и мы помещаем в него данные. Затем мы устанавливаем заголовок content-type :

axios({
  method: 'post',
  url: 'https://my-api.com',
  data: qs.stringify({
    item1: 'value1',
    item2: 'value2'
  }),
  headers: {
    'content-type': 'application/x-www-form-urlencoded;charset=utf-8'
  }
})

Оригинал: “https://flaviocopes.com/axios-urlencoded/”