axios请求参数类型
时间: 2024-10-08 13:05:12 浏览: 38
前端axios请求封装
Axios是一个流行的基于Promise的HTTP库,用于浏览器和Node.js环境中。它支持多种请求参数类型:
1. **URLSearchParams**:这是最常见的参数形式,适用于GET请求。你可以像这样创建并附到axios实例的配置上:
```javascript
let params = new URLSearchParams();
params.append('key', 'value');
axios.get('/api', {params: params});
```
2. **Query string parameters**:也可以直接将键值对拼接到URL中作为查询字符串,适合简单的GET请求。
```javascript
axios.get('/api?key=value&anotherKey=anothervalue');
```
3. **JSON body**:对于POST、PUT、PATCH等需要发送数据的请求,通常使用`data`选项,并设置`Content-Type`为`application/json`:
```javascript
axios.post('/api', { key: 'value' }, { headers: {'Content-Type': 'application/json'} });
```
4. **FormData**:用于文件上传,适用于`multipart/form-data`编码:
```javascript
const formData = new FormData();
formData.append('file', file);
axios.post('/upload', formData);
```
5. **Object as string**:如果不想序列化,可以直接将对象作为string传递,例如`axios.post('/api', JSON.stringify({ myData: 'example' }))`。
6. **axios.request()**: 对于更复杂的请求,可以使用`axios.request()`方法手动构建一个`config`对象,自定义headers、transformRequest等功能。
阅读全文