1
屏蔽

目前,我有以下的JavaScript函數,將採取目前的URL,並將其拼接到另一個網站的URL將其路由到適當的反饋組:URL在JavaScript

function sendFeedback() { 
    url = window.location.href; 
    newwin = window.open('http://www.anothersite.com/home/feedback/?s=' + url, 'Feedback'); 
} 

不知道這是否是正確的術語,但我想隱藏window.open語句中的URL以使用當前窗口中的URL。

我該如何屏蔽原始JavaScript中的window.open網址?

+0

請定義「掩碼」。 – 2010-10-18 23:05:03

+0

@Assaf - 我不想在新的瀏覽器地址欄中顯示「http://www.anothersite.com/home/feedback/?s=www.mysite.com」,我想顯示「www.mysite.com」。 – 2010-10-18 23:08:17

+1

據我所知,你不能操縱瀏覽器窗​​口的地址欄。 – 2010-10-18 23:23:32

回答

4

事情可以做:

1面膜在一個HTML框架的外部網站從您的網站上的文檔中。 (例如www.mysite.com/shortUrl/

2發送Location HTTP標頭(實際URL最終會被顯示)

請記住,瀏覽器各盡其能展現真實地址由於釣魚擔憂。

+0

感謝您的輸入。我一直在尋找一個JavaScript的快速和骯髒的解決方案,但它聽起來像更多的工作,而不是我真的想把它放進去。 – 2010-10-19 01:24:00

0

我不會使用JavaScript,如果我想掩蓋網址,甚至認爲它可以使用JavaScript。在這種情況下你不會得到太多好處。

理由很簡單:

  • 的JavaScript/jQuery的=功能屬於客戶端(browswer /你的PC/DOM)

  • 鏈接,URL,HTTP,和標頭=功能屬於到Apache。

Apache始終處於客戶端的頂層。每當鏈接被激發到SampeLink.html時,Apache就會喚醒並讀取文件,但在JavaScript可以聲明它們之前鏈接/ url已經擁有。所以,如果你試圖在你的JavaScript腳本中操縱鏈接,即使它工作但很弱,也是毫無意義的。

我會告訴你這個令人敬畏的方法:.htaccess,你會驚訝它有多強大。如果.htaccess出現在SampleLink.html的父文件夾中,Apache將拒絕DOM引擎(您的瀏覽器)讀取文件,直到Apache完成讀取.htaccess。

在您的場景中,.htaccess可以通過重寫鏈接並向DOM引擎發送「誘餌」鏈接,同時將原始鏈接/網址保留在幕後,爲您做一些工作。如果訪問者試圖破解該應用或您關心的任何內容,則訪問者將達到404頁。

這有點複雜,但它永遠不會讓我失望。我用這個作爲我的「聖經」http://corz.org/serv/tricks/htaccess2.php