node服务配置,express配置引入vue项目中(前后端联调)

1 篇文章 0 订阅
1 篇文章 0 订阅

1、使用express插件快速搭建node服务,首先安装express插件

npm install express --save

通过express配置服务后,每次都需要node server.js显得有些繁琐,因此有了需求,能不能将自己配置的服务放在vue配置文件中,这样只需要启动vue项目,后台配置也就完成了,答案是可以的。

先说总体过程,再说详细内容

2、使用vue-cli3脚手架工具搭建的vue项目,在根目录下新建vue.config.js配置文件,由于数据交互存在跨域问题,所以在项目中需要配置跨域,我们的后端服务配置在8100端口,前端端口配置在8080端口。跨域配置如下:

module.exports={
  devServer: {
    port: 8080,
    proxy: {
        '/api': {
            target: 'http://localhost:8100',
            changeOrigin: true,
            ws: true,
            pathRewrite: {
              '^/api': ''
            }
        }
    },
  },
}

配置好跨域后,在module.exports同级下配置后端服务。配置前先安装body-parser插件,方法为

npm install body-parser --save

该插件的作用就是方便提取post方式提交的数据,使用req.body就能获得post提交的数据。如果不使用该插件将会变得很麻烦,建议安装使用。

我是使用了mongdb数据库,所以配置内容较多。

//后端提交数据配置
const express = require("express")
//引入mongoose库
const mongoose = require("mongoose")
const DB_URL = "mongodb://127.0.0.1:27017/blog"
const bodyparser=require("body-parser")
mongoose.connect(DB_URL)
mongoose.connection.on("open", function() {
    console.log("链接成功");
})
//定义文档模型,类似于数据库建表
const User = mongoose.model(
    "userName",
    new mongoose.Schema({
        title: { type: String, require: true },
        body: { type: Number, require: true }
    })
)
//新增数据
User.create(
    {
        title: "喵星人",
        body: 19
    },
    function(err, doc) {
        if (!err) {
            console.log(doc);
        } else {
            console.log(err);
        }
    }
)
//删除数据
User.remove({ age: 20 }, function(err, doc) {
    console.log(doc);
})
//修改数据
User.update({ name: "功夫熊猫1" }, { $set: { age: 28 } }, function(err, doc) {
    console.log(doc);
})
//新建app
const app = express();
//body-parser为中间件,方便获取post操作数据,需要先使用一下。
app.use(bodyparser.urlencoded({extended:false}))
//请求数据
app.get("/", function(req, res) {
    res.send("<h1>hello world</h1>");
})
app.post(`/dataName.html`, function(req, res) {
    if(req.body.user=='admin'&&req.body.password=='123'){
		res.sendFile(`${__dirname}/test.html`);
	}else{
		res.send("404");
	}
})
app.get("/dataName.html", function(req, res) {
    res.send("您好")
})
app.get("/home.html", function(req, res) {
  console.log(req.query);
})
//返回json类型数据
app.get("/data", function(req, res) {
    User.find({}, function(err, doc) {
        res.json(doc);
    });
})

//监听8100端口
app.listen("8100", function() {
    console.log("8100");
})

配置完成后,只需要像以往启动项目一样,不同的是启动项目同时,也启动了node服务,当点击提交数据时候,就会跳转到响应内容中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值