马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在 axios 中,GET 和 POST 哀求的参数通报方式有所不同。详细来说:
- GET 哀求的参数:通常是通过 URL 的查询字符串来通报参数。
- POST 哀求的参数:通常是通过哀求体(body)来通报数据。
以下是怎样在 axios 中编写 GET 和 POST 哀求并通报参数的示例:
1. GET 哀求参数
在 GET 哀求中,参数是通过 URL 查询字符串来通报的,axios 会自动将参数格式化为 URL 查询字符串。
示例:
- // 使用 GET 请求
- axios.get('https://api.example.com/data', {
- params: {
- id: 123,
- name: 'John Doe',
- }
- })
- .then(response => {
- console.log('GET 请求成功', response.data);
- })
- .catch(error => {
- console.error('GET 请求失败', error);
- });
复制代码 解析:
- axios.get 中的第二个参数是一个包罗 params 的设置对象。
- params 对象中的键值对会被自动转换成查询字符串(例如 id=123&name=John%20Doe),并附加到 URL 上。
最终哀求的 URL 会是:
https://api.example.com/data?id=123&name=John%20Doe
2. POST 哀求参数
在 POST 哀求中,参数是通过哀求体(body)来通报的。可以通过 data 字段来通报。
示例:
- // 使用 POST 请求
- axios.post('https://api.example.com/data', {
- id: 123,
- name: 'John Doe',
- })
- .then(response => {
- console.log('POST 请求成功', response.data);
- })
- .catch(error => {
- console.error('POST 请求失败', error);
- });
复制代码 解析:
- axios.post 的第二个参数是要发送的哀求体(数据),它将作为哀求的主体通报到服务器。
- 在这个例子中,{ id: 123, name: 'John Doe' } 会作为 JSON 数据放到哀求体中发送。
3. 带 headers 的 GET 和 POST 哀求
假如你须要通报一些额外的头信息(例如 Authorization、Content-Type 等),可以在 axios 的设置对象中添加 headers 字段。
示例:带 headers 的 GET 哀求
- axios.get('https://api.example.com/data', {
- params: {
- id: 123,
- name: 'John Doe',
- },
- headers: {
- 'Authorization': 'Bearer your-token',
- 'Custom-Header': 'CustomHeaderValue',
- }
- })
- .then(response => {
- console.log('GET 请求成功', response.data);
- })
- .catch(error => {
- console.error('GET 请求失败', error);
- });
复制代码 示例:带 headers 的 POST 哀求
- axios.post('https://api.example.com/data', {
- id: 123,
- name: 'John Doe',
- }, {
- headers: {
- 'Authorization': 'Bearer your-token',
- 'Content-Type': 'application/json',
- }
- })
- .then(response => {
- console.log('POST 请求成功', response.data);
- })
- .catch(error => {
- console.error('POST 请求失败', error);
- });
复制代码 4. 其他常见用法
- GET 哀求发送查询字符串:当你须要在 URL 中直接拼接参数时,可以这样做:
- axios.get('https://api.example.com/data?id=123&name=John Doe')
- .then(response => {
- console.log('GET 请求成功', response.data);
- })
- .catch(error => {
- console.error('GET 请求失败', error);
- });
复制代码
- POST 哀求发送 form-data 数据:假如你须要发送文件或表单数据,可以使用 FormData 对象。
- const formData = new FormData();
- formData.append('file', fileInput.files[0]);
- formData.append('id', 123);
- axios.post('https://api.example.com/upload', formData, {
- headers: {
- 'Content-Type': 'multipart/form-data',
- }
- })
- .then(response => {
- console.log('文件上传成功', response.data);
- })
- .catch(error => {
- console.error('文件上传失败', error);
- });
复制代码 总结
- GET 哀求:参数通过 params 通报,axios 会自动将其转化为查询字符串,附加在 URL 后面。
- POST 哀求:参数通过哀求体(data)通报,通常是 JSON 格式的数据。
- 假如须要自定义哀求头或其他设置,可以在哀求设置中添加 headers 字段。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |