2009-05-06 93 views
2

我正在從WCF調用軸Web服務。該請求工作得很好,但我得到空值。使用Fiddler我能夠確定響應將以Transfer-Encoding爲基礎:分塊。這意味着在xml的響應中有控制字符。 WCF不會拋出錯誤。它只是繼續前進,應該由Method返回的對象爲null。任何人都可以告訴我如何告訴WCF如何正確處理HTTP 1.1分塊編碼消息?.NET WCF無法解碼「塊」響應

這裏是給別人一個鏈接,要求一個similer問題:

http://www.biztalkgurus.com/forums/t/10860.aspx

SOAP響應:

HTTP/1.1 200 OK 
Date: Wed, 06 May 2009 15:34:41 GMT 
Server: Apache 
Set-Cookie: JSESSIONID=01A43C26DB5E284B70F1F6D466D5CD5D; Path=/arsys 
Keep-Alive: timeout=15, max=100 
Connection: Keep-Alive 
Transfer-Encoding: chunked 
Content-Type: text/xml;charset=utf-8 

ba7 
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns0:HelpDesk_QueryList_ServiceResponse xmlns:ns0="urn:Port" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <ns0:getListValues> 
     <ns0:Assigned_Group>CHQ-TSR-WEL</ns0:Assigned_Group> 
     <ns0:Assigned_Group_Shift_Name/> 
     <ns0:Assigned_Support_Company>IT Support</ns0:Assigned_Support_Company> 
     <ns0:Assigned_Support_Organization>WH</ns0:Assigned_Support_Organization> 
     <ns0:Assignee>David</ns0:Assignee> 
     <ns0:Categorization_Tier_1>ADD</ns0:Categorization_Tier_1> 
     <ns0:Categorization_Tier_2>HARDWARE</ns0:Categorization_Tier_2> 
     <ns0:Categorization_Tier_3>DESKTOP/LAPTOP/NOTEBOOK</ns0:Categorization_Tier_3> 
     <ns0:City/> 
     <ns0:Closure_Manufacturer/> 
     <ns0:Closure_Product_Category_Tier1/> 
     <ns0:Closure_Product_Category_Tier2/> 
     <ns0:Closure_Product_Category_Tier3/> 
     <ns0:Closure_Product_Model_Version/> 
     <ns0:Closure_Product_Name/> 
     <ns0:Company>IT Support</ns0:Company> 
     <ns0:Contact_Company>IT Support</ns0:Contact_Company> 
     <ns0:Contact_Sensitivity>Standard</ns0:Contact_Sensitivity> 
     <ns0:Country/> 
     <ns0:Department>WEL</ns0:Department> 
     <ns0:Summary>Old PC to be Cascaded 
</ns0:Summary> 
     <ns0:Notes> User Name: 
Make: Dell 
Model: Latitude D600 
Serial Number: 
Location: </ns0:Notes> 
     <ns0:First_Name>James</ns0:First_Name> 
     <ns0:Impact>3-Moderado/Limitado</ns0:Impact> 
     <ns0:Incident_Number>INC000000009017</ns0:Incident_Number> 
     <ns0:Internet_E-mail></ns0:Internet_E-mail> 
     <ns0:Last_Name>Goodrich</ns0:Last_Name> 
     <ns0:Manufacturer/> 
     <ns0:Middle_Initial/> 
     <ns0:Organization>--</ns0:Organization> 
     <ns0:Phone_Number>+326</ns0:Phone_Number> 
     <ns0:Priority>Medium</ns0:Priority> 
     <ns0:Priority_Weight/> 
     <ns0:Product_Categorization_Tier_1>HARDWARE</ns0:Product_Categorization_Tier_1> 
     <ns0:Product_Categorization_Tier_2>DESKTOP/LAPTOP/NOTEBOOK</ns0:Product_Categorization_Tier_2> 
     <ns0:Product_Categorization_Tier_3>CASCADE PC</ns0:Product_Categorization_Tier_3> 
     <ns0:Product_Model_Version/> 
     <ns0:Product_Name/> 
     <ns0:Region></ns0:Region> 
     <ns0:Reported_Source/> 
     <ns0:Resolution>New PC 
Make: 
Model: 
Serial Number: 
Ship to: 
Shipping Carrier: 
Tracking Number:</ns0:Resolution> 
     <ns0:Resolution_Category/> 
     <ns0:Resolution_Category_Tier_2/> 
     <ns0:Resolution_Category_Tier_3/> 
     <ns0:Service_Type>User Service Request</ns0:Service_Type> 
     <ns0:Site>Salt Lake City</ns0:Site> 
     <ns0:Site_Group/> 
     <ns0:Status>Assigned</ns0:Status> 
     <ns0:Status_Reason/> 
     <ns0:Urgency>3-Medium</ns0:Urgency> 
     <ns0:VIP>No</ns0:VIP> 
    </ns0:getListValues> 
</ns0:HelpDesk_QueryList_ServiceResponse></soapenv:Body></soapenv:Envelope> 
0 

回答

0

我不認爲你將能夠得到這爲IIS工作(或者客戶端取決於你所處的位置)應該在它到達你之前將其去掉,就像你不需要手動去掉請求的gzip一樣。

this case似乎分塊並沒有得到服務器軟件的很好的支持。