2016-04-03 20 views
0

我建立在Tomcat的一個HTML字符串,我注意到,在我的JSON對象,我點擊的HREF鏈接是一樣的東西:HTML的HREF在Tomcat中

http://localhost/%22/https://myLinkHere.com/%22

這是一個兩部分的問題。首先,它應該包含前面的http://localhost?其次,爲什麼%22在那裏?

這裏是我的JSON的href看起來像文本:

<a href=\"https:/myLinkHere\">linkDisplayName</a> 

這看起來我的權利,但我不知道爲什麼最後的22%是存在的。

回答

0
  1. 我想你將不再需要本地主機,只要你提供的是相對路徑
  2. 爲22%的ASCII碼是「這是在您的鏈接正確引用。
+0

有什麼方法可以讓我的鏈接可點擊,它會轉到正確的鏈接?例如,當我點擊鏈接時,超鏈接是https://mylinkhere.com而不是http:// localhost /%22/https://myLinkHere.com/%22? – Kevin

+0

根據我的理解,無論您將此信息添加到Json中,您都有額外的字符。確保你以正確的方式添加它。過去,我已經通過Json添加了鏈接,並且它是可點擊的 – LearningPhase

0

HTML解析器非常寬鬆,這往往會導致混淆行爲,如果沒有確切的JSON,很難說清楚但存在一些明顯的問題。最終,問題在於您的HTML格式不正確和/或錯誤轉義。 %22"URL-encoded,這意味着您已引用\的引號將包含在網址中,而不是圍繞它們。這可能意味着在JSON中他們是雙重逃脫的。這可能意味着它是\\"或類似的東西;嘗試使用一個反斜槓(\")或根本不使用反斜槓(")。

請注意,您的網址中的協議(https:/)也是錯誤的;一個URL開始於一個協議(如https)後跟一個:,並且通常後面跟着兩個斜線(//)。你的URL遵循協議只有一個斜槓,這使得它看起來像一個相對的URL而不是一個絕對的URL。瀏覽器會在相對URL前加上他們推斷當前主機的內容,這在您的上下文中似乎是localhost

的HTML 應該這個樣子:

<a href="https://myLinkHere">linkDisplayName</a> 

因此,在總結沒有,該URL可能不應該包含http://localhost,並且它不應該包含那些%22小號兩種。他們正在顯示,因爲你的JSON格式不正確。