——————————sql在nodejs中的使用——————————

一、安装nodejs :

cmd 执行命令:npm i mysql -s

二、导入:

var mysql = require("mysql")

三、创建连接

var con =mysql .createConnection({
    host:"localhost",
    user:"root",
    password:"123456",
    database:"feedback"
})

四、链接

con.connect(function(err){
    if(!err){
        console.log("连接成功")
    }else{
        console.log("连接错误",err)
    }
})

五、执行sql

con.query(sql,function (err,result){
    if(!err){
        console.log(result)
    }else{
        console.error("数据操作错误")
    }
})

六、断开sql

con.end(function(err){
    if(!err){
        console.log("断开成功")
    }
})

番外server

// 导入 express
var express = require('express');
// 导入mysql
var mysql = require("mysql");
// 创建连接
var con = mysql.createConnection({
	host:"localhost",
	user:"root",
	password:"123456",
	database:"feedback"
})
// 连接数据库
con.connect(function(err){
	if(!err){
		console.log("数据库连接成功")
	}else{
		console.error("数据库连接失败",err);
	}
})

// 创建express 的实例
var app = express();

// 定义静态资源
app.use(express.static('./public'))

// 使用一个json中间件
app.use(express.json());

// 定义模板引擎,使用模板引擎
// 定义模板的位置
app.set("views","./views")
// 定义使用ejs模板引擎
app.set('view engine','ejs');

// 处理post请求地址是/adduser
app.post("/adduser",function(req,res){
	// req是请求的数据 req.body请求的body
	var sql = `insert into user (name,password,score) values('${req.body.name}','${req.body.password}',${req.body.score})`;
	// 执行sql
	con.query(sql,function(err,result){
		// 如果没有错误,显示添加用户成功
		if(!err){
			res.json({
				"errCode":0,
				"msg":'添加用户成功',
				"data":result,
			})
		}else{
			// 如果有错误,显示错误
			res.json({
				"errCode":1,
				"msg":'数据库失败',
				"err":err
			})
		}
	})
	
})


// 定义用户页面(路由)
app.get("/user",function(req,res){
	// 渲染user页面,传入的数据为空
	res.render('user',{
		title:"我是用户页面",
		list:["zeng8","zeng9","zeng11","木木"]
		})
})



// 前后端分离的项目
app.get("/list",function(req,res){
	// 定义sql
	var sql = `select name,score,id from user where 1 order by id desc limit 0,5`;
	// 查询sql
	con.query(sql,function(err,result){
		if(!err){
			// 没有错误返回数据
			res.json({
				"errCode":0,
				"msg":"请求成功",
				"list":result
				})
		}else{
			// 返回错误原因
			res.json({
				"errCode":1,
				"msg":"数据库错误"
			})
		}
	})
	
})


// 监听get方法的路径 /首页
// req请求,res响应
app.get("/",function(req,res){
	res.send(`<h1>我是首页</h1>`)
})

app.get("/about",function(req,res){
	res.send(`<h1>我是关于页面</h1>`)
})
// 监听端口,启动服务器
var server = app.listen(8888,function(){
	console.log("服务器在 localhost:8888 启动完毕")
})

Node.js使用axios请求接口以及拦截器的使用方法如下: 首先,需要安装axios模块: ``` npm install axios ``` 然后,在代码引入axios模块: ```js const axios = require('axios'); ``` 接下来,可以使用axios发送GET、POST等请求: ```js axios.get('http://example.com/api') .then(response => { console.log(response.data); }) .catch(error => { console.log(error); }); axios.post('http://example.com/api', {data: 'hello'}) .then(response => { console.log(response.data); }) .catch(error => { console.log(error); }); ``` 当然,axios还支持一些其他的请求方法,比如PUT、DELETE等。 接下来,我们可以使用axios的拦截器对请求和响应进行处理。例如,我们可以在请求头添加token: ```js axios.interceptors.request.use(config => { const token = localStorage.getItem('token'); if (token) { config.headers.Authorization = `Bearer ${token}`; } return config; }, error => { return Promise.reject(error); }); ``` 在上面的代码,我们使用了axios的interceptors.request.use方法,它可以在请求被发送出去之前对其进行拦截处理。在这个例子,我们将localStorage存储的token添加到请求头的Authorization字段。 我们还可以使用axios的interceptors.response.use方法对响应进行处理。例如,我们可以检查响应状态码是否为401,如果是,则跳转到登录页面: ```js axios.interceptors.response.use(response => { return response; }, error => { if (error.response.status === 401) { window.location.href = '/login'; } return Promise.reject(error); }); ``` 在上面的代码,我们使用了axios的interceptors.response.use方法,它可以在响应被接收之前对其进行拦截处理。在这个例子,我们检查了响应状态码是否为401,并且在这种情况下跳转到登录页面。 以上就是在Node.js使用axios请求接口及拦截器的使用方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值