Web services web服务应如何报告错误
现在,当我的Web服务发现一个错误,例如无法连接到远程数据库,或者您正在查找的记录未找到时,我定义了一个特殊的返回值 例如: 我的webservice返回距离为整数,对于某些错误,我返回负值。(-100、-200等) 但是,如果我的Web服务返回一个数据集“employee”,那么我将返回一个数据集“error”(ErrorID,Description) 第一个例子对我来说更自然,但第二个因为我更改了数据集的名称,我感到有点担心 主要的是我总是制作一个合适的文档,这样webservice消费者就知道如何处理特殊的返回值Web services web服务应如何报告错误,web-services,Web Services,现在,当我的Web服务发现一个错误,例如无法连接到远程数据库,或者您正在查找的记录未找到时,我定义了一个特殊的返回值 例如: 我的webservice返回距离为整数,对于某些错误,我返回负值。(-100、-200等) 但是,如果我的Web服务返回一个数据集“employee”,那么我将返回一个数据集“error”(ErrorID,Description) 第一个例子对我来说更自然,但第二个因为我更改了数据集的名称,我感到有点担心 主要的是我总是制作一个合适的文档,这样webservice消费者就
因此,我正在寻找最佳实践。您可以返回一个包含数据(有效负载)和错误字符串(最好是本地化的)或整数的简单包装类。让客户端JavaScript检查
Error
属性是否为非null或大于0,并在这种情况下采取适当的操作,因为它指示错误。否则,按正常方式处理数据
属性中的有效负载
C#中的一个例子:
公共类WebMethodReturn
{
公共T数据{get;set;}
公共字符串错误{get;set;}
}
这是SOAP服务还是Rest服务?最好将响应数据封装在具有调用结果信息的某种包装容器中。您有包装容器的示例吗?
public class WebMethodReturn<T>
{
public T Data { get; set; }
public string Error { get; set; }
}