一个前辈这样说的,
我直接写的app.use(express.static("./public")),然后前辈说
“建议改成app.use('/static',express.static("./public"));或者public,可以减少不必要的查询,提高node效率”
为什么加一个虚拟路径会提高效率呢,减少不必要的查询?希望告知下原理,谢谢。萌新。
一个前辈这样说的,
我直接写的app.use(express.static("./public")),然后前辈说
“建议改成app.use('/static',express.static("./public"));或者public,可以减少不必要的查询,提高node效率”
为什么加一个虚拟路径会提高效率呢,减少不必要的查询?希望告知下原理,谢谢。萌新。
可能就不用去匹配路由就能知道哪个请求是走静态资源,哪个请求是走路由了。
/static下的请求就直接加载静态资源,否则还要跟router里注册的路由排除一下才知道是静态资源吧!我瞎分析的也不知道对不对。。。
13 回答12.7k 阅读
8 回答2.4k 阅读
2 回答5k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
5 回答796 阅读
3 回答2.6k 阅读✓ 已解决
3 回答2.1k 阅读
咱们来看一下文档!
从上面两句话可知,app.use就是把指定的
中间件
加载到指定的请求路径
下面。其中如果未指定路径, 则默认为 "/"。这里面有两个关键点:
中间件:express 中的中间件可以看做是能够处理请求和响应,并控制请求走向的单元,一般都是函数。
请求路径:也就是 URL,官网上请求路径是可选参数,其隐含的意思,如果不指定请求路径,就是表示要处理所有的请求,如果指定了请求路径,匹配当前路径并只处理该请求就好,,这个就是可以优化性能的地方。