我试图添加一个自定义消息与我的Web服务的HTTP错误响应。我希望是这样的:ServiceStack自定义HTTP响应添加消息和错误代码
The remote server returned an error: (406) Not Acceptable. Custom message: {ErrorCode: 2, Error: "No Username"}
我尝试这样做:
throw new HttpError(System.Net.HttpStatusCode.NotAcceptable, "No Username");
而且这样的:
string ErrorMessage = "ErrorCode = 2, Error = No Username";
throw new HttpError(406, ErrorMessage);
而且这样的:
var responseDto = new UserCreatedResponse { ErrorCode = 2, Error = "No Username" };
return new HttpResult(responseDto, HttpStatusCode.NotAcceptable)
{
StatusDescription = "Computer says no",
};
我跟着serviceStack文档https://github.com/ServiceStack/ServiceStack/wiki/Customize-HTTP-Responses但我不明白,我只得到Http错误“远程服务器返回错误:(406)不可接受。”但不是自定义消息。 我误解了一些东西吗? 谢谢
嗨@mythz,我试图锻炼如何使用你的服务,我很抱歉,但我没有看到发送错误信息接收......错误信息的要点。请告诉我,如果我错过了这一点。我在想的是和错误处理程序,它将分析发布的数据并发送各种错误的不同描述。我把我的代码放在GitHub上,你可以看到我尝试发送相同的HTTP代码和每个错误情况的不同描述。有链接:https://github.com/SuperBulot/Custom_response/commit/c87c56868df516129d9b3fc586cd56ce89ec2c85 感谢您的帮助 – Ben 2014-12-18 12:41:07
@Ben上述服务表明,抛出一个'HttpError'服务确实工作如预期的自我托管和大多数ASP.NET Web服务器,但不会在VS WebDev服务器中工作,因为它不允许设置自定义的StatusDescription。 – mythz 2014-12-18 16:16:27
我知道,我正在使用ASP.NET Web服务器uder IIS 8.1。我想我会在经典的DTOs响应中添加我的ErrorCode和错误描述。无论如何感谢 – Ben 2014-12-18 17:04:28