Node.js中express框架的应用有哪些
Admin 2022-08-18 群英技术资讯 319 次浏览
http://www.expressjs.com.cn/
var http = require('http');
var express = require('express');
var app = express();
使用自定义中间件
app.use('/',function(req , res , next){
console.log(‘这是自定义中间件’)
next(); 调用next表示执行后续的中间件代码
});
使用static中间件加载静态资源
app.use('/', express.static(__dirname + "/statics"));
app.get('/index', function(req, res) {
res.send("hello browser")
res.end();
})
http.createServer(app).listen(3000,function(err) {
if(err) throw err;
console.log('服务器连接成功');
})
安装中间件,npm install body-parser –save
使用中间件:
如果express是4.0以下版本需要挂载在express后面使用express.bodyParser( )
如果express是4.0以上版本,可以直接使用bodyParser( )
(1)static静态资源处理中间件
(2)logger获取浏览器基本信息中间件
(3)bodyParser通过post方法提交的数据解析中间件
(4)query通过get方法提交的数据解析中间件
(5)cookieParser用户状态保存cookie解析中间件
(6)session启用session管理用户状态中间件
(7)favicon网站图标处理中间件
路由指如何定义应用的端点,以及如何响应客户端的请求(通俗的讲就是通过制定不同的路径,调用对应方法处理用户的请求)
路由是由一个URL、HTTP请求(GET、POST等)和若干个句柄组成
路由中的URL路径支持正则表达式的方式,例如:/abc?123,表示c可有可无
路由的链式编程:
app.route(‘/parma’).get(function(req,res,next){}).post(function(req,res,next){})
表示相同路径下不同请求方式的访问
app.get('/index', function(req, res) {
console.log(req.baseUrl); 挂载路由的路径,以根路径为标准
console.log(req.hostname);
console.log(req.ip); 本机的ip地址
console.log(req.path); 此处为/index
console.log(req.protocol); 传输协议,一般为http
console.log(req.query); 地址栏url中传输的参数
console.log(req.route); 路由对象
console.log(req.body); 以post方法提交的数据
console.log(req.cookies); 浏览器中存储的cookie
console.log(req.signedCookies); 浏览器中已签署的cookie,及已经加密过的cookie app.use(cookieParser(“secret”))
res.send("hello browser")
res.end();
})
(1)get(field)获取请求头中对应名称的属性
(2)is(type)判断是否有指定的mime类型,Content-Type
(3)param(name)获取指定名称的参数值(post,get均可)
(1)app表示express的应用对象
(2)headersSent表明是否发送过数据给响应对象,是一个boolean值
(3)Locals本地变量
(1)set(key,value)设置响应头信息
(2)append(key,value)在响应头中追加数据
(3)cookie(name,value,[option])设置cookie
(4)clearCookie(name,[option])清除指定的cookie
(5)download(path,filename,fn)下载文件
(6)end(data,encoding)结束文本数据的输入
(7)get(field)获取响应头中对应的属性值
(8)json(body)发送json字符对象
(9)location(path)指定网站地址
(10)redirect(status,path)重定向到指定的路径
(11)render(view,locals,callback)渲染指定的视图
(12)type(“.html”)设置传递给浏览器文件的响应mime类型Content-Type
(13)sendStatus(302)设置状态码为302,重定向,加载location中的地址
(14)writeHead(302,{location:”http://www.baidu.com/”})设置状态码为302,且加载location中的地址,页面跳转到百度
(15)send(data)可以传递多种数据类型,但是每个路由中只能使用一次,且不能和sendStatus等带有send标识的方法同用
(16)write(data)传递数据
(17)end(data)响应结束标识方法
(18)download(“path” , setname , fn)下载文件
(19)sendFile(“path”)发送文件,此处为绝对路径
简单高效的模板语言,通过数据和模板,可以生成HTML标记文本
ejs特点:
(1)快速编译和渲染
(2)简单的模板标签
(3)自定义标记分隔符
(4)文件的包含
(5)支持浏览器端和服务器端
(6)模板静态缓存
(7)支持express视图系统
(1)Render(str,data,[option]):直接渲染字符串生成HTML
str:需要解析的字符串模板
data:数据
[option]:配置选项
(2)Compile(str ,[option]):编译字符串得到模板函数
str:需要解析的字符串模板
[option]:配置选项
[option]中的相关参数可以查阅文档了解使用方法
(1)<% %>流程控制标签
(2)<%= %>输出标签(原文输出HTML标签)
(3)<%- %>输出标签(HTML会被浏览器解析)
(4)<%# %>注释标签
(5)%对标记转义
(6)-%>去除没有意义的空格
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Javascript生成器是什么?对于新手来说,可能对Javascript生成器比较陌生,因此这篇文章就给大家介绍一下Javascript生成器的概念以及用法。感兴趣的朋友就往下看吧。
jQuery中清除兄弟元素的方法是什么?在jQuery中,我们想要清楚兄弟元素,可以使用到remove()方法,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
JS对象创建方式有几种,优缺点是什么?在JS开发中,如果要输入姓名、性别、年龄等信息,使用值类型存储,则必须声明多个变量,如果你声明更多的变量,就会造成变量污染,别着急,下面是JS中几种对象创建方法的优缺点比较,希望能帮到对此有需要的你。
这篇文章主要介绍ref在hooks中怎样使用的内容,对新手来说,可能对ref不是很了解,不清楚ref是什么意思,因此下文就给大家来详细的介绍一下ref,感兴趣的朋友可以参考下,希望大家阅读完这篇文章能有所收获,接下来小编带着大家一起了解看看。
这篇文章主要介绍了Vue3使用mitt进行组件通信的步骤,帮助大家更好的理解和学习使用vue,感兴趣的朋友可以了解下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008