关于前端和后端路径访问的疑问
来源:9-3 首页前端的开发下
慕斯6088333
2019-03-20
老师您好, 我听完这章之后,突然有感觉。原来在html中引用 js脚本文件的时候的路径。
如shoplist.html中
<script type='text/javascript' src='../resources/js/shop/shoplist.js'
charset='utf-8'></script>
这里的…/ 在html文件中不是应该返回上一级目录么。
比如w3school的定义
<img src="../picture.jpg"> picture.jpg is located in the folder one level up from the current folder
他这里的例子不是one level up 就仅仅是上一级的目录 。为什么我们这里引用就能访问根目录呢?
这里的…/是返回到项目的根目录么。
也是因为有这句话
也就是这里的C:\Apps\apache-tomcat-8.5.37\webapps\mvco2o再拼接上后面的/resources/js/shop/shoplist.js找到js文件么?
而且这里的引用js脚本也可以写成
<script type='text/javascript' src='/o2o/resources/js/shop/shoplist.js'
charset='utf-8'></script>
这样还可以正常访问到嘛。
我感觉我不是特别懂,前端的路径和后端的路径上的访问,实质上是否有区别么~??
2回答
-
同学好,同学可以在项目发布的时候,console里会显示你项目实际发布的路径,去那个路径上看(不是咱们源码这里,项目会发布到一个临时目录下),看看里面的结构,就知道是怎么回事了,就发现..确实是返回上级目录,并且返回后,按照后续路径就能访问到对应的资源
https://www.cnblogs.com/shenpengyan/p/6095488.html
012019-03-21 -
慕斯6088333
提问者
2019-05-24
自己补充一下,
其实只要包含 /resources/ 这个即可,所以如下几种方式都可行。
<script type='text/javascript' src='../resources/js/shop/shoplist.js' charset='utf-8'></script>
<script type='text/javascript' src='./resources/js/shop/shoplist.js' charset='utf-8'></script>
<script type='text/javascript' src='/resources/js/shop/shoplist.js' charset='utf-8'></script>
原因是我们在配置了
<!-- 2.静态资源默认servlet配置 --> (1)加入对静态资源的处理:js,gif,png (2)允许使用"/"做整体映射 --> <mvc:resources mapping="/resources/**" location="/resources/" /> <mvc:default-servlet-handler />
只要有/resources/ 就会统一映射到resources的文件夹
<mvc:default-servlet-handler /> will configure a handler for serving static resources by forwarding to the Servlet container's default Servlet. 让default Servlet Handler 来识别静态资源。 就不会跳转其它handler进行处理。当然在这之前还会碰到dispatcher servlet
00
相似问题