我想引用在Javascript的域名基地,這將在我的本地環境http://localhost/project
和http://www.project.com(或https取決於頁面)。我目前正在定義2個全局變量,其中一個用於指向其他非https頁面的鏈接(我不想使用當前頁面可能爲https的事實),另一個用於查看頁面是否爲https,在沒有不安全元素警告的情況下加載資源。Javascript URL基於本地/ prod
本地版本:
var link_base_url = 'http://localhost/project/'; //for links to other non-secure pages
if(window.location.protocol == 'https:') var base_url = 'http://localhost/project/'; //SSL version for displaying resources or calling ajax scripts
else var base_url = 'http://localhost/project/'; //non-SSL version for displaying resources or calling ajax scripts
PROD版本:
var link_base_url = 'http://www.project.com/'; //for links to other non-secure pages
if(window.location.protocol == 'https:') var base_url = 'https://www.project.com/'; //SSL version for displaying resources or calling ajax scripts
else var base_url = 'http://www.project.com/'; //non-SSL version for displaying resources or calling ajax scripts
我JavaScript的專家,但我想,這大概不是做最徹底的方法:它迫使我改變這些每次我想部署這個腳本的代碼行很少,並且從我理解的使用全局變量來看並不是那麼好。
有沒有更好的方法來做到這一點?我沒有使用像Ember這樣的JS框架。
感謝您的意見!
這樣做沒有意義。無論服務於您的內容的計算機如何,網址「/」都會引用您的主機網址。你試圖用這個來達到什麼目的? –
如果我輸入「/ ajax/controller」,它只會在我們處於同一個根目錄時才起作用:因爲某些視圖可能會從子文件夾中調用,例如「/ admin/users/view」我無法輕易使用相對路徑,因爲某些函數在整個應用程序中很常見,並且使用相對路徑不能很好地工作。因此我想使用完整路徑。 – Davor