node.js--express框架应用,搭建服务器
程序员文章站
2022-07-01 07:50:57
...
环境要求
$ node.js -v
$ npm -v
//把NPM改成淘宝镜像
$ npm config registry https://registry.npm.taobao.org
//安装express命令管理工具
$ npm install -g express-generator
//安装express框架
$ npm install -g express
//查看版本号
$ express --version
//使用express搭建一个项目
$ express myTest -e
//进入项目目录
$ cd myTest
//安装组件
$ npm install
//启动项目
$ npm start
测试情况
用浏览器访问http://localhost:3000得到结果
控制台的结果是
change directory:
> cd myTest
install dependencies:
> npm install
run the app:
> SET DEBUG=mytest:* & npm start
F:\node.js.dev\js20190514>cd myTest
F:\node.js.dev\js20190514\myTest>npm install
npm notice created a lockfile as package-lock.json. You should commit this file.
added 53 packages from 38 contributors and audited 141 packages in 6.405s
found 0 vulnerabilities
F:\node.js.dev\js20190514\myTest>npm start
> aaa@qq.com start F:\node.js.dev\js20190514\myTest
> node ./bin/www
GET / 200 20.460 ms - 207
GET /stylesheets/style.css 200 5.697 ms - 111
GET /favicon.ico 404 11.518 ms - 1023
添加一个路由
app.js中添加
app.use('/myTest',function(req,res){
res.send('让学习成为一种大学生时尚');
});
重启服务器,再访问URL:http://localhost:3000/myTest
使用ejs模板
在view目录下新建如下ejs文件,文件名是myHtml.ejs
<!DOCTYPE html>
<html>
<head>
<title>node.js ejs模板应用</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1>node.js ejs模板应用</h1>
<p>Welcome to node.js ejs模板应用</p>
<p>寻找一个可以让自己享受安静的地方。</p>
</body>
</html>
然后添加该路由
app.use('/myHtml',function(req,res){
res.render('myHtml');
});
启重服务器
然后访问该路由
http://localhost:3000/myHtml
获取请求的参数
app.get('/myTest1',function(req,res){
var getParam = req.query;
var name = getParam.name;
var age = getParam.age;
res.send('获取到的参数是'+name+','+age);
});
访问时,带上参数,用get方式提交
http://localhost:3000/myTest1?name=fhzheng&age=30
如果用post方式提交,则
//get方式提交
app.get('/myTest1',function(req,res){
var getParam = req.query; //得到一个json对象
var name = getParam.name;
var age = getParam.age;
res.send('获取到的参数是'+name+','+age);
});
//post方式提交
app.post('/myTest2',function(req,res){
var getParam = req.body; //得到一个json对象
var name = getParam.name;
var age = getParam.age;
res.send('获取到的参数是'+name+','+age);
});
测试时有点问题,获取到的数据是undefined以后解决20190514
获取参数,并发送到模板进行数据渲染
创建模板
<!DOCTYPE html>
<html>
<head>
<title>获取用户名和年龄</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1>获取用户名和年龄</h1>
<p>我的名字是:<%= name %></p>
<p>我的年龄是:<%= age %></p>
</body>
</html>
创建路由
//get方式提交,并将数据渲染到模板上展示
app.get('/myTest3',function(req,res){
var person = req.query; //得到一个json对象
var name = person.name;
var age = person.age;
//res.send('获取到的参数是'+name+','+age);
res.render('myData',person);
});
测试结果http://localhost:3000/myTest3?name=郑丰华&age=30
路由分离
新建路由
在项目的routes目录下,新建goods.js文件
var express = require('express');
var router = express.Router();
router.get('/',function(req,res,next){
res.render('myGoods',{title:'Goods',goods:'商城'});
});
module.exports = router;
创建模板
<!DOCTYPE html>
<html>
<head>
<title>分离路由后的模板应用</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1>分离路由后的模板应用</h1>
<p>我的页面是:<%= title %></p>
<p>我的商品是:<%= goods %></p>
</body>
</html>
导入路由
在项目的app.js文件中,加入
var goods = require('./routes/goods');
app.use('/goods',goods);
然后,重启服务器,访问结果
推荐阅读
-
常用的web应用服务器有哪些(java开发常用四大框架)
-
使用Python的Flask框架来搭建第一个Web应用程序
-
分享十个便宜VPS主机-VPS服务器建站和搭建应用服务体验
-
python自己动手从零开始搭建FTP服务器2 FTP初步框架
-
阿里云轻量应用服务器 搭建配置详解
-
asp.net mvc 简单项目框架的搭建(二)—— Spring.Net在Mvc中的简单应用
-
谈谈各大框架/产品的流程应用 框架应用服务器SeamJBPMJSP
-
基于SpringBoot搭建应用开发框架 基于SpringBoot-Dubbo的微服务快速开发框架
-
基于SpringBoot搭建应用开发框架 基于SpringBoot-Dubbo的微服务快速开发框架
-
[原创]Ajax和LazyLoad的冲突 Ajaxjson应用服务器DWR框架