zoukankan      html  css  js  c++  java
  • 客户端解析与服务器解析的相对路径区别

    感谢大佬:https://www.cnblogs.com/wangenxian/p/10828276.html

    服务器端的地址

    服务器端的相对地址指的是相对于你的web应用的地址,这个地址是在服务器端解析的
    不同于html和javascript中的相对地址,他们是由客户端浏览器解析的)也就是说这时候
    在jsp和servlet中的相对地址应该是相对于你的web应用,即相对于http://127.0.0.1/webapp/的。

    其用到的地方有:
    forward:servlet中的request.getRequestDispatcher(address);这个address是
    在服务器端解析的,所以,你要forward到a.jsp应该这么写:
    request.getRequestDispatcher(“/user/a.jsp”)这个/相对于当前的web应用webapp,
    其绝对地址就是:http://192.168.0.1/webapp/user/a.jsp。
    sendRedirect:在jsp中<%response.sendRedirect("/rtccp/user/a.jsp");%>

    客户端的地址

    所有的html页面中的相对地址都是相对于服务器根目录(http://127.0.0.1/)的,
    而不是(根目录下的该Web应用的目录)http://127.0.0.1/webapp/的。

    Html中的form表单的action属性的地址应该是相对于服务器根目录(http://127.0.0.1/)的,
    所以,如果提交到a.jsp为:action="/webapp/user/a.jsp"或action="<%=request.getContextPath()%>"/user/a.jsp;
      提交到servlet为actiom="/webapp/handleservlet"
      Javascript也是在客户端解析的,所以其相对路径和form表单一样。
      因此,一般情况下,在JSP/HTML页面等引用的CSS,Javascript.Action等属性前面最好都加上
    <%=request.getContextPath()%>,以确保所引用的文件都属于Web应用中的目录。
    另外,应该尽量避免使用类似".","./","…/…/"等类似的相对该文件位置的相对路径,这样
    当文件移动时,很容易出问题

  • 相关阅读:
    isNUll ,对于sql中的一个表的description的NULL和空格的处理
    Thread类学习
    java学习计划
    HTTP请求过程(http是一种无状态协议,即不建立持久的连接)
    JS事件流(W3C与IE区别)
    学习Javascript闭包
    div内长串数字或字母不断行处理
    仿购物车加减数字
    多行文字两行断尾点点点显示
    MegaCli命令详解
  • 原文地址:https://www.cnblogs.com/tfxz/p/12621529.html
Copyright © 2011-2022 走看看