Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web services web服务应如何报告错误_Web Services - Fatal编程技术网

Web services web服务应如何报告错误

Web services web服务应如何报告错误,web-services,Web Services,现在,当我的Web服务发现一个错误,例如无法连接到远程数据库,或者您正在查找的记录未找到时,我定义了一个特殊的返回值 例如: 我的webservice返回距离为整数,对于某些错误,我返回负值。(-100、-200等) 但是,如果我的Web服务返回一个数据集“employee”,那么我将返回一个数据集“error”(ErrorID,Description) 第一个例子对我来说更自然,但第二个因为我更改了数据集的名称,我感到有点担心 主要的是我总是制作一个合适的文档,这样webservice消费者就

现在,当我的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; }
}