2010-08-16 62 views
2

我想讓Firefox呈現正在Internet Explorer中格式化樹中返回的XML。強制Firefox以類似於時尚的樹形式呈現XML

目前它只是顯示的字段值..即沒有XML

是有一些特殊的設置我缺少什麼?

編輯

這裏是正在返回

<ArrayOfSampleItem xmlns="http://schemas.datacontract.org/2004/07/InmoCasaService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><SampleItem><Id>1</Id><StringValue>Hello</StringValue></SampleItem></ArrayOfSampleItem> 

的XML,但它顯示了以下

1Hello 

編輯

而且這裏是通過提琴手

返回
HTTP/1.1 200 OK 
Cache-Control: private 
Content-Length: 222 
Content-Type: text/html; charset=utf-8 
Server: Microsoft-IIS/7.5 
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET 
Date: Mon, 16 Aug 2010 19:56:27 GMT 

<ArrayOfSampleItem xmlns="http://schemas.datacontract.org/2004/07/InmoCasaService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><SampleItem><Id>1</Id><StringValue>Hello</StringValue></SampleItem></ArrayOfSampleItem> 

編輯

現在我有這個...但還是同樣的問題再看看內容類型

HTTP/1.1 200 OK 
Cache-Control: private 
Content-Length: 226 
Content-Type: application/xml 
Server: Microsoft-IIS/7.5 
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET 
Date: Tue, 17 Aug 2010 06:09:14 GMT 

<ArrayOfSampleItem xmlns="http://schemas.datacontract.org/2004/07/InmoCasaService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><SampleItem><Id>1</Id><StringValue>He4444llo</StringValue></SampleItem></ArrayOfSampleItem> 
+2

您要返回的內容類型是什麼? – 2010-08-16 19:32:07

+0

我已經更新了我的問題與來自提琴手的信息還包括內容類型 – 2010-08-16 19:57:44

回答

1

這是因爲Firefox是試圖使該文件爲HTML,正如Content-Type: text/html標題所告知的那樣。 HTML瀏覽器應該忽略未知標籤。

你想讓你的服務器返回Content-Type: application/xml。我不知道如何配置IIS來執行此操作,但最簡單的方法可能是使用.xml擴展名命名文件(如果尚未安裝)。

+0

感謝您的評論...嗯,我設法改變內容類型,但一切仍然是一樣的......我將更新我的問題與提琴頭etc – 2010-08-17 06:10:16

+0

data:application/xml,在我嘗試時顯示XML樹。 (我沒有粘貼整個XML,因爲它困擾了堆棧溢出。)所以它應該像XML文件一樣工作,或者如圖所示。 – Neil 2011-01-20 00:42:25

0

此外,它可能不會在FF中呈現,因爲你沒有包含頭部(不是http頭部,他們似乎很好)和編碼信息的xml全部結構。

+0

THanks,在Internet Explorer中沒有問題..那麼我究竟錯過了什麼?我正在返回的XML是在我的問題上面,它有一個xmlns和有效的XML。 – 2010-08-17 07:13:41

+0

嘗試在文件開頭添加XML聲明:'<?xml version =「1.0」encoding =「UTF-8」?> – svick 2011-01-20 11:10:39

1

我有同樣的問題,它原來是我的插件之一(Wappalyzer)。仔細閱讀,我認爲有幾個插件可以做到這一點(包括Firebug)。

禁用它並重新啓動Firefox解決了問題。

1

嗯,這裏是神奇的部分,可以幫助:

在JavaScript,假設你有XML字符串 - 不管它是如何到達那裏 - 是這樣的:

var myXMLDoc = "<?xml version='1.0' ?><snarg><floof>42</floof></snarg>"; 

如果堵塞這個到當前文檔(或一個新的窗口),因爲是這樣的:

document.write (myXMLDoc); 

那麼瀏覽器就會把它當作HTML,你不會得到在美麗的XML樹形圖Firefox瀏覽器。
但是,如果你preceed附魔你的文件,告訴瀏覽器如何解釋它:

document.write ("data:text/xml," + myXMLDoc); 

然後你會踢成火狐解釋爲XML,並獲得非常酷樹圖。