gpt4 book ai didi

json - 我需要从 SOAP Web 服务抛出 JSON 异常

转载 作者:行者123 更新时间:2023-12-02 10:48:23 27 4
gpt4 key购买 nike

我是 JSON 新手,但我过去做过一些 SOAP WebServices。

我最新的c#-WebService(“*.asmx”)被不同的客户端使用:
- C# WebApp 使用 SOAP 类和 SOAP 方法
- Javascript 使用 ajax/JSON 与 WebService 对话
- Android 应用程序使用 JSON 与 WebService 对话

c# WebApp 正确获取所有异常但 JSON 客户端会得到错误的异常 - 不管怎样如果 WebService 抛出 SoapException 或者如果它抛出WebException - 所有 JSON 客户端得到的都是内部服务器错误

[ScriptService]
[WebService(Namespace = "http://SvcAssessment/";)]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class SvcVideoAssessment : adpWebService
[
// Implementation is here ...

[WebMethod] [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public Call NewCall(string ticket, string name, Case cas, char status)
{
// generate an exception for testing
throw new WebException("no new calls available");
}

}

如果可以的话,我想抛出不同类型的异常通过任何方式区分当前方法调用是否来自脚本还是来自 SOAP 客户端。

JSON 客户端需要知道什么错误发生时,错误消息内部服务器错误不充分且具有误导性。

最佳答案

你需要做两件事:

1.) 抛出 new Exception() 而不是 new WebException()

2.) 在配置部分添加到 web.config 中: <system.web> <customErrors mode="Off"></customErrors> </system.web>

然后你的ajax/JSON客户端会看到原始的异常消息

关于json - 我需要从 SOAP Web 服务抛出 JSON 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30729743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com