Axios POST请求

栏目: Javascript 发布时间:2024-12-24

发送 POST 请求

发送 POST 请求非常简单。你需要使用 axios.post 方法,并传入请求的 URL 和请求的数据。以下是一个基本的例子:

axios.post('https://example.com/api/endpoint', {
    key1: 'value1',
    key2: 'value2'
})
.then(response => {
    console.log('Response data:', response.data);
})
.catch(error => {
    console.error('Error:', error);
});

在这个例子中,我们向 https://example.com/api/endpoint 发送了一个 POST 请求,并传递了一个包含 key1key2 的对象作为请求数据。

配置请求选项

你还可以传递一个配置对象来进一步自定义请求。例如,你可以设置请求头、超时时间等:

axios.post('https://example.com/api/endpoint', {
    key1: 'value1',
    key2: 'value2'
}, {
    headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer YOUR_TOKEN_HERE'
    },
    timeout: 5000 // 超时时间设置为 5000 毫秒
})
.then(response => {
    console.log('Response data:', response.data);
})
.catch(error => {
    console.error('Error:', error);
});

在这个例子中,我们设置了请求头,包括 Content-TypeAuthorization,并设置了请求的超时时间为 5000 毫秒。

处理响应和错误

在上面的例子中,我们使用了 .then().catch() 方法来处理响应和错误。你也可以使用 async/await 语法来简化代码:

async function sendPostRequest() {
    try {
        const response = await axios.post('https://example.com/api/endpoint', {
            key1: 'value1',
            key2: 'value2'
        }, {
            headers: {
                'Content-Type': 'application/json',
                'Authorization': 'Bearer YOUR_TOKEN_HERE'
            },
            timeout: 5000
        });
        console.log('Response data:', response.data);
    } catch (error) {
        console.error('Error:', error);
    }
}

sendPostRequest();

在这个例子中,我们使用 async/await 语法来发送 POST 请求,并处理响应和错误。

完整示例

以下是一个完整的示例,展示了如何使用 Axios 发送一个带有自定义请求头和超时设置的 POST 请求:

const axios = require('axios');

async function sendPostRequest() {
    const url = 'https://example.com/api/endpoint';
    const data = {
        key1: 'value1',
        key2: 'value2'
    };
    const config = {
        headers: {
            'Content-Type': 'application/json',
            'Authorization': 'Bearer YOUR_TOKEN_HERE'
        },
        timeout: 5000
    };

    try {
        const response = await axios.post(url, data, config);
        console.log('Response data:', response.data);
    } catch (error) {
        console.error('Error:', error);
    }
}

sendPostRequest();

本文地址:https://www.tides.cn/p_js-axios-post