1. 程式人生 > >js檔案和jsp檔案發起請求時絕對路徑的獲取方式

js檔案和jsp檔案發起請求時絕對路徑的獲取方式

當工程比較小的時候,之前在本地環境的測試的時候總是使用相對路徑,這樣如果放在遠端的tomcat下進行測試,如果還是要使用相對路徑,就需要加上專案名稱,這樣的話改起來非常的麻煩;而換做絕對路徑就不需要做更改。

1.js檔案中獲取專案絕對路徑的方式:

function getRealPath(){
    //獲取當前網址,如: http://localhost:8083/myproj/view/ahha.jsp
    var curWwwPath=window.document.location.href;
    //獲取主機地址之後的目錄,如: myproj/view/ahha.jsp
    var pathName=window.document.location.pathname;
    var pos=curWwwPath.indexOf(pathName);
    //獲取主機地址,如: http://localhost:8080
    var localhostPath=curWwwPath.substring(0,pos);
    //獲取帶"/"的專案名,如:/ahha
    var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);

    //得到了 伺服器名稱和專案名稱
    var realPath=localhostPath+projectName;
    return realPath;
}

2.jsp檔案中可以使用如下方式:

<%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
%> 

比如:當某個按鈕觸發ajax請求的時候,就可以使用<%=basePath %>獲取專案的絕對路徑以後,再加上想要跳轉的地址,就可以實現跳轉。

算是自己的一些筆記,用的時候能夠找得到。也借鑑了別人的部落格,非常感謝。

相關推薦

js檔案jsp檔案發起請求絕對路徑獲取方式

當工程比較小的時候,之前在本地環境的測試的時候總是使用相對路徑,這樣如果放在遠端的tomcat下進行測試,如果還是要使用相對路徑,就需要加上專案名稱,這樣的話改起來非常的麻煩;而換做絕對路徑就不需要做更改。 1.js檔案中獲取專案絕對路徑的方式: function get

實現springboot修改Java檔案jsp檔案均不能重啟的問題

在傳統的JavaEE開發中,我們如果修改了Java檔案是需要將tomcat容器進行重啟的,jsp修改是不用重啟的,有了springboot,只需要匯入相應的包然後配置相應的配置就可以實現無論是修改Ja

node的express框架接收get/post請求,引數獲取方式

一.接收get請求 情況一:引數是url的一部分: 1 eg:router.get('/nodeServer/dataSet/page/:name/:pageNum/:pageSize', function(request, resopnse){ 2 // 獲取引數name , pageNum

Eclipse中寫jsp檔案,裡面載入不了js檔案css檔案

在專案中新建jsp檔案和js檔案和css檔案,啟動伺服器,訪問頁面,載入不到js檔案和css檔案;(檔案存在) jsp檔案部分程式碼如下: <link rel="stylesheet" type

vue引入外部js檔案scss檔案

最近在做一個vue專案,已經有一段時間了。之前對在vue專案如何引入外部的js檔案和scss檔案一片空白。網上百度也是魚龍混雜,很少有用的東西。後來自己通過一個線上專案學習到了。所以將自己的實現記錄下來 我將寫在vue檔案的js抽出來,放在一個js檔案裡面。然後在vue引入的形式如下(es6的寫

文字檔案二進位制檔案在儲存的區別

1、二進位制檔案是把記憶體中的資料按其在記憶體中的儲存形式原樣輸出到磁碟上存放,也就是說存放的是資料的原形式。 2、文字檔案是把資料的終端形式的二進位制資料輸出到磁碟上存放,也就是說存放的是資料的

JSP中的TAG檔案TLD檔案小結

在jsp檔案中,可以引用tag和tld檔案。 1.對於tag檔案 <%@ taglib prefix="ui" tagdir="/WEB-INF/tags" %> 其中的tags是個目錄,裡面有若干tag檔案。 但使用<ti:XXXX>時,目錄WEB-

在php模版檔案html檔案中引入js,css檔案錯誤解決

1,html檔案引入js一些資原始檔時候:可以寫相對路徑來引入,<script src="../lib/layer/layer.js"></script>     <script  src="../lib/jquer.min.js">&l

linux-gcc 編譯標頭檔案檔案搜尋路徑

一、標頭檔案    gcc 在編譯時尋找所需要的標頭檔案 :    ※搜尋會從-I開始    ※然後找gcc的環境變數 C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,OBJC_INCLUDE_PATH    ※再找內定目錄 /usr/include  /usr/local/incl

gcc編譯連結標頭檔案檔案的搜尋順序

編譯:找符號定義 連結:找實現 執行:執行 靜態庫連結時直接寫程序序裡了 動態庫連結時只連結到了一些地址資訊,需要到執行時再進行動態載入 編譯時搜尋標頭檔案的順序: 1.  gcc先找-I設定的路徑 2.  再找gcc的環境變數C_INCLUDE_PATH, CPLU

網頁中的動態載入(js檔案css檔案即換膚)

導語: 最近經常遇到一些人問起網頁中按需載入的需求,例如網頁load時不載入js檔案,只有當使用者觸發某個事件時才按其所需載入其所需的js檔案,又比如使用者可以隨意地切換網頁的顏色等。縱觀這些需求分析,不外乎就是js裡面的一個動態載入,因此有必要做幾個demo以供大家參考。

axios配置及使用(發起請求帶上token)

ima exp The push .post 設置 export host 接口 1.安裝 利用npm安裝 npm install axios --save 2.引入即可使用 import axios from ‘axios‘ 3.目錄 4.各個文件設置: (1

Windows批處理檔案(.bat檔案.cmd檔案)介紹以及簡單使用

首先說一下cmd檔案和bat檔案的區別,從檔案描述中的區別是,cmd檔案叫做:Windows命令指令碼,bat檔案叫:批處理檔案,兩者都可以使用任意一款文字編輯器進行建立、編輯和修改,只是在cmd中支援的命令要多於bat。 批處理檔案是一種沒有什麼固定格式的檔案,他可以處理一條或者多條命令,

Java讀檔案檔案

import java.io.*; public class FileTest { String path = "C:\\Users\\Desktop\\test.txt"; File f = new File(path); private void writeFile() throw

python讀取大檔案普通檔案

讀取檔案,最常見的方式是: with open('filename', 'r', encoding = 'utf-8') as f: for line in f.readlines(): do_something(line) 但是,當完成這一操作時,readlines()

CPP檔案C檔案混編將sqlite3加入自己的c++工程

今天嘗試將使用sqlite3資料庫,直接使用sqlite3的原始碼,得到sqlite3.c和sqlite3.h。 我想將他們加入到我的cpp工程裡面 所以我新建了一個mysqlite3.cpp檔案,在裡面呼叫了sqlite3的函式。 下面來說明我遇到的問題及解決方法 一共有兩種編譯方

java讀取檔案寫入檔案方式(位元組流字元流)

java讀取檔案和寫入檔案的方式 以位元組為單位讀取檔案 一次讀一個位元組 一次讀多個位元組 以字元為單位讀取檔案 一次讀一個字元 一次讀多個字元 以位元組為單位讀取檔案 以位元

新增pch 檔案 header檔案

一 、新增pch檔案         1 ios->other->PCH file,建立一個pch檔案,新增需要引入的標頭檔案名       2 把該檔案的路徑

keil中標頭檔案 c檔案 路徑設定 問題

被標頭檔案的路徑設定困擾了很長時間,現在終於知道了! 在keil4中標頭檔案路徑設定的方法: 假設這裡有若干個檔案,分別是: main.c dong.c peng.h 其中,main.c和dong.c都依賴與peng.h。他們的內容分別如下: main.c: 絕對路徑是

java中io建立檔案讀取檔案

簡單瞭解IO流:https://www.cnblogs.com/weibanggang/p/10034325.html package com.wbg.iodemo1128; import java.io.*; public class OutputStreamDemo { public