Web服务应如何报告错误

时间:2014-10-24 19:45:55

标签: web-services

现在,当我的webservice发现一个错误,例如无法连接到远程数据库或找不到你要查找的记录时,我定义了一个特殊的返回值。

例如:

我的webservice返回距离为整数,i返回某些错误的负值。 (-100,-200等)

但是,如果我的网络服务返回数据集"员工"然后我返回一个数据集"错误" with(ErrorID,Description)

第一个例子对我来说更自然,但第二个例子是因为我更改了数据集名称,我感到更加担心。

主要的是我总是制作一份正确的文件,以便网络服务消费者知道如何处理特殊的返回值。

所以我正在寻找最佳实践。

1 个答案:

答案 0 :(得分:1)

您可以返回一个包含数据(有效负载)和错误字符串(最好是本地化)或整数的简单包装类。让客户端JavaScript检查Error属性是否为非null或大于0,并在这种情况下采取适当的操作,因为它表示错误。否则,正常处理Data属性中的有效负载。

C#中的一个例子:

public class WebMethodReturn<T>
{
    public T Data { get; set; }
    public string Error { get; set; }
}