比方說,我們有兩頁:根據請求
https://www.example.com/first/firstpage.html
https://www.example.com/second/secondpage.html
兩個加載資源https://www.example.com/resource.js
如果我想要服務器服務resource.js
能夠服務於不同版本的resource.js
,具體取決於請求來自哪個頁面,是否有可靠的頭部,可以確定請求頁面的完整URL(或者可能有其他方法來確定此問題)?
我知道有一個Origin
標題,但從我的理解,這只是代表沒有完整的URL和查詢字符串的域(和任何子域)。有沒有辦法讓服務器知道資源請求的完整URL和查詢字符串?
如果這是不可能的,我知道這會很容易以包括JS腳本標記信息如下:
<script src="/resource.js?origin=/first/firstpage.html"></script>
但我不希望有修改每個頁面的腳本標記。是否有其他方式讓頁面自動在資源請求的查詢字符串中包含它自己的URL(無必須使用我自己的JS腳本動態加載資源 - 僅HTML請!),或者任何唯一的標識符腳本標記不必在每個頁面上單獨修改?
好點 - 我認爲我最初的想法可能有缺陷。根據我的問題的第二部分,是否有任何方法讓瀏覽器自動在URL中附加某種唯一標識符,或者某種方式讓提供資源的終端服務器能夠區分來自'firstpage.html '和'secondpage.html'? – abagshaw
@abagshaw您需要預處理髮送給客戶端的HTML以包含要加載的URL,或者使用JavaScript來添加腳本。 – Brad