简单了解Vue + node进行前后端交互

一、编写node服务器

1、安装Node.js:可以用:node -v 检查电脑是否安装了node, 如果电脑尚未安装Node.js,可以在Node.js的官方网站上下载安装程序,并按照说明进行安装。

node -v

 2、初始化项目:新建一个文件夹,在项目文件夹中打开终端窗口,并运行以下命令来初始化一个新的Node.js项目。(初始化完会出现一些有关项目的详细问题,可以回车跳过,最后会出现一个package.json文件就算完成)

npm init

 3、安装依赖包:express(用于网络连接) 、cors(用于处理跨域问题)、body-parser(用来解析http请求体

npm install express body-parser cors --save

4、创建API路由:在刚创建的文件夹下新建一个js文件,用于编写api路由代码。像我创建了一个api.js文件,并输入以下代码:

const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');

const app = express();

app.use(bodyParser.json());
app.use(cors());

// 定义GET请求的路由
app.get('/api', (req, res) => {
  console.log(req.body);
  res.send(
    [{
      date: "2020年",
      address: "罗湖区",
      value: "2900",
    },
    {
      date: "2021年",
      address: "南山区",
      value: "1200",
    },
    {
      date: "2022年",
      address: "宝安区",
      value: "700",
    },
    {
      date: "2023年",
      address: "福田区",
      value: "450",
    }]
  );
});

// 定义POST请求的路由
app.post('/api', (req, res) => {
  console.log(req.body);
  res.send('POST请求');
});

// 启动服务器
app.listen(3000, () => {
  console.log('Server started on port 3000');
});

5、启动服务器:在项目文件下启动终端输入以下命令:(node + 创建的js文件名)

node api.js

可以用ApiPost测试一下是否能成功发送请求。

 二、创建vue项目并进行前后端交互

1、利用脚手架创建一个vue项目。接下来需要安装一下axios依赖包,用于发送网络请求给后端。

npm i axios --save

2、在src目录下创建一个api文件用于处理接口,并创建一个http.js文件,并输入以下代码进行配置:

import axios from "axios";

// 创建axios实例化
const service = axios.create({
    baseURL:"/api",
    timeout:30000, //请求超时时间
    headers:{
        "Content-Type":"application/json;charset=UTF-8" //表单数据传递转化
    },
    withCredentials:true, //自动添加服务器提供cookie信息
})

// request 拦截器 发送数据到后台前拦截
service.interceptors.request.use(
    config=>{
        return config;
    },
    error=>{
        console.log("axios中request报错",error);
        Promise.reject(error);
    }
)

// Response 拦截器 获取后台数据前拦截器
service.interceptors.response.use(
    response=>{
        return response.data;
    },
    error=>{
        console.log("axios中response报错",error);
        Promise.reject(error);
    }
)

export default service;

3、 在同级目录下新建一个api.js文件,用于统一处理接口

import request from "./http"
export function getServe(params){
    return request({
        url:"",
        method:"get",
        params
    })
}

4、接着在vue.config.js 文件进行一下代理配置

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  lintOnSave:false,
  devServer:{
    proxy:"http://localhost:3000"
  }
})

5、最后在前端展示页面进行接口调用

  methods: {
     getServeFun(){
      getServe().then(data=>{
        console.log("data",data)
        if(data){
          this.tableData = data;
        }
      })
    },
  },
  created(){
    this.getServeFun();
  },

6、最后效果展示,并打印一下接口数据

 

 

 

 

  • 7
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前后分离是一种开发模式,它将前和后的开发分离,前主要负责用户界面的展示和交互,后主要负责数据的处理和存储。Vue2、Node.js和MySQL可以结合使用来实现前后分离。 首先,我们可以使用Vue2作为前框架,通过它来开发用户界面。Vue2提供了一套响应式的数据绑定和组件化的架构,使得前开发更加高效和灵活。我们可以使用Vue的官方脚手架工具vue-cli来快速搭建项目的基础结构。 其次,Node.js可以用作后技术,作为一个基于事件驱动的服务器JavaScript运行环境,它提供了丰富的模块和工具,使得后开发更加便捷。我们可以使用Express框架来构建Node.js的后应用,通过定义路由和处理请求,与前进行数据的交互。 最后,MySQL是一个开源的关系型数据库管理系统,它可以存储和管理数据。我们可以使用Node.js的mysql库来连接和操作MySQL数据库,通过编写SQL语句来实现数据的增删改查。 在实际开发中,前通过Ajax或者Axios等工具向后发送请求,后接收请求后,通过与MySQL数据库的交互来获取或处理数据,并将结果返回给前。前通过Vue2的数据绑定和渲染机制,将后返回的数据展示在用户界面上。 通过Vue2、Node.js和MySQL的组合,我们可以实现一个完整的前后分离的应用程序。Vue2提供了优秀的用户界面,Node.js作为后技术提供了强大的功能和灵活性,MySQL作为数据库管理系统提供了数据的存储和管理。这样的开发模式可以提高开发效率和代码的维护性,同时也能够实现更好的用户体验和性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值