2012-05-21 112 views
0

我使用WCF與ios應用程序,當請求某種方法時,IIS返回415錯誤,不支持媒體類型。 代理類是通過wsdl2objc生成的,與Windows應用程序調用相同的調用很好HTTP不支持媒體類型問題

+0

你能展示一些代碼,你認爲這個問題可能嗎? – Chris

+0

我不知道它會在哪裏發生,爲這兩個應用程序請求標頭相同,唯一的區別是請求內容類型,對於ios它是text/xml,對於win應用程序它是application/soap + msbin1。我更改ios的contenttype並將其設置爲應用程序/ soap + xml,因爲當它是應用程序/ soap + msbin1 IIS返回狀態400 – taffarel

回答

1

該問題可能在您的WCF服務配置中,特別是您正在使用的綁定。我想你已經配置它使用自定義綁定或WSHttpBinding,但無論哪種方式,該服務預計 MIME類型,但從wsdl2objc生成的類所做的請求與text/xml。我不太清楚如何修復它,但首先配置標準BasicHttpBinding的服務並嘗試一下。還要恢復您對wsdl2objc生成的代碼所做的所有更改。
Btw WSHttpBinding使用SOAP 1.2,我不確定wsdl2objc是否可以使用它(我只用BasicHttpBinding測試過)。

+0

感謝graver,據我所知wsdl2objc不支持自定義綁定正確?我的服務配置了自定義綁定,我使用它來驗證票證。在這種情況下,有沒有辦法在basichttpbinding中配置綁定進行驗證?我也不確定wshttpbinding,當我用wsdl2objc使用asmx服務時,它也生成soap12客戶端,但我從來沒有使用它。 – taffarel

相關問題