2011-03-25 73 views
1

我有一個asmx web服務,可以使用SOAP或JSON調用。當我在方法中拋出自定義異常(例如告訴用戶他/她發送了無效密碼)時,如果它是SOAP調用,它們會正確發送給客戶端。但是如果它是一個JSON調用,它似乎總是一個標準的500內部服務器錯誤 - 無論我拋出什麼異常。如何通過在json asmx客戶端/服務器調用中拋出異常來發送錯誤?

如果用戶使用JSON調用服務,該如何發送適當的錯誤消息?

+0

我才意識到如下:當web.config文件設置爲的customErrors =開,則正確的異常被髮送到客戶端,如果它是一個SOAP調用,但如果它是一個JSON調用,然後總是500內部服務器錯誤。如果我更改爲customErrors = Off,則情況正好相反。 – Sten 2011-03-25 08:39:37

+0

所以現在問題是:我該怎麼做,以便我的工作,無論客戶端使用JSON或SOAP連接? – Sten 2011-03-25 08:59:24

回答

0

我將通過添加解決了類似的問題,下面我的web配置

<system.web.extensions> 
<scripting> 
<webServices> 
    <jsonSerialization maxJsonLength="2147483644"></jsonSerialization> 
</webServices> 
</scripting> 

而不管消費者的預期我的自定義異常現已返回。

RGDS AJ

+0

對不起,不起作用。 – Sten 2011-03-25 09:52:49

相關問題