cors实现跨域配置
安装 cors 后可通过引人中间件的方式引入到代码中
npm install cors
const cors=require("cors")
要在调用路由之前
app.use('URL前缀',cors())
自定义响应头实现跨域配置
CORS 响应头 Access-Control-Allow-Origin 允许访问的地址
res.setHeader('Access-Control-Allow-Origin','允许跨域访问的 URL,可以写通配符*')
CORS 响应头 Access-Control-Allow-Methods 默认仅支持 GET,PODST,HEAD 请求
res.setHeader('Access-Control-Allow-Methods','*')
nodejs连结,操作数据库
安装,引入mysql的包
npm install MySQL
const mysql = require('mysql')
建立连结
const db = mysql.createPool({
host:"127.0.0.1",
user:"root",
password:"admin123",
databases:"mydatabases"
})
执行sql
let SQL_str='select * from user'
db.query('SQL_str',(err,results)=>{
if(err) return console.log(err.message)
查询操作执行成功后结果集存储到 results 中
console.log(results)
})
执行有参数的 sql
db.query('SQL str',['SQL_str中需要的参数','字符串中用?占位'],(err,results)=>{
if(err) return console.log(err.message)
// 如果是增删改操作,则 results.affectedRows 为受影响的行数
console.log(results)
})
如果数据对象的每个属性和数据表的字段一一对应,可以使用便捷写法
// 插入
let user1={name:'zhangsan',age:18}
const sqlStr1='Insert into user_table SET ?'
db.query(sqlStr1,user1,(err,results)=>{
console.log(results)
})
// 更新
let user2={name:'zhangsan',age:18}
const sqlStr2='UPDATE user_table SET ? where id=?'
db.query(sqlStr2,[user2,user2.id],(err,results)=>{
console.log(results)
})