node学习(二)常见模块使用

node学习(二)常见模块使用

上一章我们了解到,node的web服务使用起来较为繁琐,这就需要外部的模块进行一部分的封装,简化我们的代码

1. express 处理请求

安装该模块

npm install express --save

我们来看官网的介绍:

Fast, unopinionated, minimalist web framework for node. // 快速,无偏见,最低限度的node网络框架。

const express = require('express')
const app = express() 
app.get('/', function (req, res) {
      
	res.send('Hello World')
}) 
app.listen(3000)

可以看到,使用了express之后,我们可以直接使用其get方法来处理get请求。

同时,我们也可以指定静态资源的目录来处理所有的静态资源请求

app.use(express.static("static"));

2. body-parser 处理表单数据

node中不包含对请求body中的数据进行解析的api,所以需要借助第三方框架来解析

npm install body-parser
var bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({
      extended: false })); // 创建 aplication/x-www-form-urlencoded 的解析器
app.use(bodyParser.json())  // 创建 application/json 的解析器

配置完之后,我们使用 res.body 就能直接读取表单数据了

3. ejs模板引擎

当我们需要使用数据来渲染页面时,就需要一个模板引擎来生成动态的页面

ejs(Embedded JavaScript templates)是一种模板引擎,其语法和jsp类似:

npm install ejs

我们可以使用renderFile方法来渲染页面,并携带数据

ejs.renderFile('./views/inedx.ejs', {
     parm:parm}, (err, data) => {
     
    if (err) {
     
        console.log(err);
    }
    res.writeHead(200, {
     'Contend-Type': 'text/html;charset="utf-8"'});
    res.end(data);
});

在ejs文件中

可以使用如下标签来使用javascript语句:

<% %> \\ 执行js语句
<%= %> \\ 使用数据
<%- %> \\ 渲染为html标签

4. mysql数据库

同样,我们也可以在node中使用数据库,这里以mysql为例,以后会学习mongoDB

const mysql = require('mysql'); //导入mysql

const config = {
      //连接参数
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'myblog',
    multipleStatements: true
}
query:function (statement, callback) {
     
    connection = mysql.createConnection(config); // 创建链接
    connection.connect(); //链接
    connection.query(statement, function (error, results) {
      //执行查询
        if (error) {
     
            console.log(error)
        }
        callback(results); // 回调查询结果
        connection.end();  // 关闭查询
    });
}

你可能感兴趣的:(开发相关技术,nodejs,javascript,java)