用axios请求node做的简单网络接口教学易懂

简介: 用axios请求node做的简单网络接口教学易懂

非常简单直接看代码,不懂的直接扣我

前端页面

<script>
  import axios from 'axios'
  // console.log(axios.prototype);
export default {
  name:'AxiosBase',
  data() {
    return {
      list:''
    }
  },
  methods: {
    getData(){
      // 发送基本请求
      // axios.get('http://localhost:4000/data')
      // .then((res)=>{
      //   console.log(res);
      // })
      // .catch((err)=>{
      // })
      // axios默认get请求
      // axios('http://localhost:4000/data')
      // .then((res)=>{
      //   console.log(res);
      // })
      // .catch((err)=>{
      // })
      // 指定get请求的参数
      // axios('http://localhost:4000/data?id=1')
      // .then((res)=>{
      //   console.log(res);
      // })
      // .catch((err)=>{
      // })
      // 这里加的这个id没有用的需要后端提供接口
      axios('http://localhost:4000/data',{
        // 指定get请求的参数,进行拼接
        params:{
          id:1
        }
      })
      .then((res)=>{
        // console.log(res);
        this.list = res.data
      })
      .catch((err)=>{
      })
    },
    postData(){
      // 后台是以Form Data方式处理数据的
      // 不用这个URLSearchParams,post后台收不到这个数据,处理方式有很多种
      var stu = new URLSearchParams()
      // 设置值    键名    值
      stu.append('name','123'),
      stu.append('sex','男')
      axios.post('http://localhost:4000/user',stu)
      .then((res)=>{
        console.log(res);
      })
      .catch((err)=>{
      })
    }
  },
}
</script>

后端是node的express框架

1.// 引入express
const express = require('express');
//这个组件用于接收post数据
const bodyParser = require('body-parser');
// 创建服务器对象
const app = express();
// 注册中间件
app.use(bodyParser.urlencoded({extended:false}))
app.use(bodyParser.json({type:'application/*+json'}))
//本地服务器解决跨域,不可缺
app.all('*',function(req,res,next){
  res.header('Access-Control-Allow-Origin','*')
  res.header('Access-Control-Allow-Headers','Content-Type')
  res.header('Access-Control-Allow-Methods','*');
  res.header('Content-Type','application/json;charset=utf-8');
  next();
})
// 处理get请求
app.get('/data',(req,res)=>{
  // 设置请求头,解决跨域,上面已经都解决了
  // res.setHeader('Access-Control-Allow-Origin','*');
  res.json({
    todos:[
      {
        "id":1,
        "name":"chen",
        "age":20,
        "sex":"男"
      },
      {
        "id":2,
        "name":"xin",
        "age":10,
        "sex":"女"
      },
    ]
  })
})
// req后台向前台请求
// res后台向前台响应
app.post('/user',(req,res)=>{
  res.json({
    user:req.body,//前端传什么数据,后台就传什么数据给你
    msg:'post请求成功',
  })
  console.log('接收',req.body);
})
//开启监听
app.listen(4000,()=>{
  console.log('4000端口已经启动。。。');
})
相关文章
|
3月前
|
资源调度 JavaScript
|
1天前
|
存储 监控 算法
局域网网络管控里 Node.js 红黑树算法的绝妙运用
在数字化办公中,局域网网络管控至关重要。红黑树作为一种自平衡二叉搜索树,凭借其高效的数据管理和平衡机制,在局域网设备状态管理中大放异彩。通过Node.js实现红黑树算法,可快速插入、查找和更新设备信息(如IP地址、带宽等),确保网络管理员实时监控和优化网络资源,提升局域网的稳定性和安全性。未来,随着技术融合,红黑树将在网络管控中持续进化,助力构建高效、安全的局域网络生态。
21 9
|
3月前
|
缓存 JavaScript 搜索推荐
|
3月前
|
JavaScript
Node.js GET/POST请求
10月更文挑战第6天
45 2
Node.js GET/POST请求
|
2月前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
62 2
|
2月前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
43 0
|
3月前
|
Python
axios的get请求传入数组参数
【10月更文挑战第11天】 当使用 `axios` 发送包含数组参数的 GET 请求时,默认的序列化方式可能与后端(如 Django)不兼容,导致无法正确获取数组参数。解决方案是通过 `paramsSerializer` 指定自定义序列化函数,或使用 `qs` 库来格式化数组参数,确保前后端一致。示例代码展示了如何使用 `qs` 库设置 `arrayFormat` 为 `&quot;repeat&quot;`,以符合 Django 的解析要求。
122 2
|
3月前
|
弹性计算 Kubernetes 网络协议
阿里云弹性网络接口技术的容器网络基础教程
阿里云弹性网络接口技术的容器网络基础教程
阿里云弹性网络接口技术的容器网络基础教程
|
3月前
|
JSON JavaScript 前端开发
axios的post请求,数据为什么要用qs处理?什么时候不用?
axios的post请求,数据为什么要用qs处理?什么时候不用?