Аксиос пост пребывание в ожидании - PullRequest
0 голосов
/ 24 августа 2018

Это простой запрос Post с использованием Axios внутри Vue:

import axios from 'axios'
export default {
    name: 'HelloWorld',
    props: {
        msg: String
    },
    mounted () {
        const code = 'test'
        const url = 'http://localhost:3456/'
        axios.post(url, code, { headers: {'Content-type': 'application/x-www-form-urlencoded', } }).then(this.successHandler).catch(this.errorHandler)
    },
    methods: {
        successHandler (res) {
            console.log(res.data)
        },
        errorHandler (error) {
            console.log(error)
        }
    }
}

Метод Get работает нормально.Но сообщение остается как «Ожидание» на вкладке «Сеть».Я могу подтвердить, что на моем веб-сервисе есть метод Post, и он что-то возвращает (проверено на Postman).

ОБНОВЛЕНИЕ

Отправка кода в качестве параметра:

axios(url, {
    method: 'POST',
    headers: {
        'content-type': 'application/json',
    },
    params: {
        code : 'test'
    },
}).then(this.successHandler).catch(this.errorHandler)

ВЕБ-СЕРВИС

server.post('/', (req, res, next) => {
    const { code }  = req.params

    const options = {
        validate: 'soft',
        cheerio: {},
        juice: {},
        beautify: {},
        elements: []
    }

    heml(code, options).then(
        ({ html, metadata, errors }) => {
            res.send({metadata, html, errors})
            next()      
        })
})

1 Ответ

0 голосов
/ 24 августа 2018

Я думаю, что есть проблема с вашей структурой запроса axios.Попробуйте это:

const URL = *YOUR_URL*;
axios(URL, {
    method: 'POST',
    headers: {
      'content-type': 'application/json',
    },
    data: *YOUR_PAYLOAD*,
  })
    .then(response => response.data)
    .catch(error => {
      throw error;
    });

Если вы отправляете параметр запроса:

axios(URL, {
    method: 'POST',
    headers: {
      'content-type': 'application/json',
    },
    params: {
     code: 'your_string'
    },
  })

, если это переменная пути, вы можете установить свой URL:

const url = `http://localhost:3456/${code}`

Дайте мне знать, если проблема все еще сохраняется

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...