2012-08-09 44 views
0

我正試圖在Visual Studio 2008中使用第三方WebService,並從服務器獲取唯一的響應。該返回有兩個內容類型標記。這是一個有效的SOAP響應內容類型嗎?

HTTP/1.0 200 OK 
Server: SMBDK_1/2.3.0 
Date: Thu, 09 Aug 2012 18:59:14 GMT 
Connection: close 
Content-Length: 670 
Content-Type: text/html; charset=ISO-8859-1 
Content-Type: text/xml 
Expires: Thu, 09 Aug 2012 18:59:14 GMT 
Last-Modified: Thu, 09 Aug 2012 18:59:14 GMT 

這是一種常見且有效的SOAP響應或奇怪嗎?

回答

2

我不能評論它有多普遍,但它是無效的(雖然它在HTTP級別而不是SOAP級別的有效性)。

由於我們有兩個內容類型:

http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2

多幅具有相同字段名的消息的報頭字段可以存在於一個消息當且僅當整個現場該標題字段的值被定義爲逗號分隔列表[即,#(值)]。

那麼,讓我們看看content-type標題:

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17

Content-Type = "Content-Type" ":" media-type 

,然後我們expand media-type

media-type  = type "/" subtype *(";" parameter) 
    type   = token 
    subtype  = token 

這不是一個逗號分隔的列表。

+0

感謝您的信息!現在我必須將其作爲錯誤提交給第三方開發者,或者找出解決方法。 – yelowsnw2 2012-08-13 22:20:52

相關問題