const app = express();
//引入路径模块
const path=require('path');
//引入MongoDB数据库模块
const mongoose = require('mongoose');
//引入接收post请求参数模块
const bodyParser = require('body-parser');
//引入session模块
const session = require('express-session');
//引入MySQL数据库模块
const mysql = require('mysql');
//配置session
app.use(session({secret:'key'}));
//配置bodyParser
app.use(bodyParser.urlencoded({extended:false}));
//配置模板引擎
app.set('views',path.join(__dirname,'views'));
app.set('view engine','art');
app.engine('art',require('express-art-template'));
//开放静态资源访问,只需要输入文件名即可,不需要输入文件夹
app.use(express.static(path.join(__dirname,'views')));
开发经验:
在使用node开发后端时最好不要直接使用'/'这个请求路径来响应内容
使用node连接数据库时,若数据库要频繁使用就不要断开与数据库的连接
res.render和res.send不能一起使用,否则会报错
ajax会有同源限制,所以要在开放静态资源的html文件中写ajax代码
请求本地服务器的路径只需要/+路径,请求异地的服务器需要http
res.redirect有发送请求地址和路径的功能
使用模板引擎时可以通过设置app.locals获取后台的数据,如果是html文件则可以通过发送ajax请求来获取数据,模板引擎语法可以更好的拼接数据和html代码
从页面往后端传输数据可以设置隐藏的表单属性
使用MySQL数据库时,表单中传入的数据不一定都行字符串类型,要在后台使用JSON.stringify把参数进行转换为字符串
使用ajax代码和node一定要考虑同步和异步的代码,若想要以同步的形式执行,把异步执行的代码写在同步的函数后面就行
在本地写的后台代码地址为localhost:3000,上传到服务器时都得更改地址