首頁  >  文章  >  後端開發  >  詳細解析包含中文字元的URL編碼問題

詳細解析包含中文字元的URL編碼問題

黄舟
黄舟原創
2017-03-06 16:40:511622瀏覽

在xml應用中,經常將一些URL資訊作為xml資料存儲,其中URL參數有可能包含有中文字元。當使用dom對xml資料進行解析時,可以對中文字元進行編碼。
但如果只使用xslt來顯示xml資料時(data.xml+data.xsl),發現此時的URL會出現編碼錯誤.即使指定編碼類型(encoding="gb2312"),仍然會出現同樣的問題.
測試發現:是IE的快取機制問題,IE仍會把新的頁面(所連結的URL)的MIME內容類型預設為text/xml

解決方法:
1 .指定輸出文檔類型為xml文檔  (example:data.xsl)
 

<xsl:output method="xml"  encoding="gb2312" media-type="text/xml" />

2.在新的視窗打開,給聯接增加屬性,指明目標視窗為其他視窗  (example:data2.xsl )

 _blank
examples:
/*** data.xml ***/



 
  http://www.google.com/search?q=
  xml数据
 
 
  http://www1.baidu.com/baidu?word=
  xml数据
 
 
  http://www.google.com/search?q=
  极限编程(xp)
 
 
  http://www1.baidu.com/baidu?word=
  极限编程(xp)
 


/*** data.xsl ***/



<xsl:output method="xml"  encoding="gb2312" media-type="text/xml" />

   


 
  
  
 
 
/*** data2.xsl ***/ _blank

以上就是詳細解析包含中文字元的URL編碼問題的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn