- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 ServiceStack.Razor 运行一个最小的应用程序,但我在运行 CustomHttpHandler 时遇到了问题。我已按照说明进行操作 here和 here ,但它无法正常工作。
我正在使用以下代码为 HttpStatusCode.BadRequest
注册自定义 http 处理程序:
public override void Configure(Container container)
{
this.Plugins.Add(new RazorFormat());
this.SetConfig(new EndpointHostConfig
{
CustomHttpHandlers =
{
{ HttpStatusCode.NotFound, new RazorHandler("/notfound") },
{ HttpStatusCode.BadRequest, new RazorHandler("/error") }
},
DebugMode = true
});
}
问题是,/notfound
处理程序非常适合 404,但无论我做什么,我都无法让 /error
razor 文件在任何时候显示抛出 ArgumentNullException
。
我的服务方法是这样的:
public object Any(Hello request)
{
if (string.IsNullOrEmpty(request.Name))
{
throw new ArgumentNullException("Name");
}
return new HelloResponse { Result = "Hello " + request.Name };
}
ServiceStack 返回 400 状态,这很好,但它仍然显示我对 HelloResponse
的 View :
我错过了什么?我是否误解了 CustomHttpHandlers 应该如何工作?
为了引用,我把项目up on github .
最佳答案
是的,CustomHttpHandlers 只是用来处理未处理的系统生成的错误。目前它们仅限于:
这些错误发生在 ServiceStack 之外,因此无法由 existing ServiceStack's event hooks or user-defined custom logic 处理,因此我们允许用户通过 CustomHttpHandlers
修改这种情况下的行为。
Error Handling wiki描述了如何处理 ServiceStack 中的错误。
尽管在处理异常后允许回退以允许通过将其呈现到用户指定的页面来进一步处理它可能是有意义的(因为它是选择加入的),您希望在此处执行此操作。
我们将考虑在未来尝试探索类似的东西。随时将这些 future 的功能请求添加到 ServiceStack's issue list所以我们不会忘记。
关于ServiceStack.Razor CustomHttpHandler 不显示 HttpStatusCode.BadRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13693908/
我需要使用 HttpClientFactory 来连接到外部 api。Startup.cs 中的代码如下所示 public void SetUpHttpClients(IServiceCollecti
我目前正在使用 Eventstore,但收到以下错误:Could not recognize BadRequest; 来自: game process tick failed UnknownError
我尝试为我设置的新 Azure 应用服务生成 Azure 应用服务托管证书。 当我运行命令生成 Azure 应用服务托管证书时: az webapp config ssl create --resou
我正在尝试进行 PATCH 操作,如果请求正文包含契约(Contract)中未指定的字段,则该操作应该会失败。例如,如果我调用此方法: [HttpPatch("{id}")] public async
调用SpeakSsmlAsync时(Microsoft Speech SDK),返回如下错误信息: > CANCELED: Reason=Error > CANCELED: ErrorCode=Bad
我想为以下代码编写单元测试用例 HomeController.cs [HttpPost] [ActionName("CreateDemo")] public async
看来HttpGet方法的返回类型不必是 ActionResult .例如,以下方法有效: [HttpGet] [Route("list")] public async Task> List() 但是,
所以我正在研究 Gtk/X11/Linux app将屏幕捕获到 .gif 并且停止捕获的方法之一是按键(Esc、Space 或 End)。您也可以使用超时。但是,要实现按键以结束捕获,我必须能够捕获键
我正在运行一个 rails 应用程序,我有一个简单的显示操作,其中的代码类似于以下内容: @post = Post.find(params[:id]) 所以如果你去帖子/1 例如,如果有帖子,您将看到
我正在尝试使用 Register-AzureRmAutomationDscNode powershell 命令在 Azure VM 上注册 DSC 配置。 Register-AzureRmAutoma
我正在创建一个仅运行简单的“等待”的管道,仅用于测试,因为我试图理解为什么我的其他管道返回错误(相同的错误)。 当我尝试调试时,它发送以下错误: { "code": "BadRequest",
我不知道怎么做,但是 Azure 允许您为同一个 VIP 在不同的 VMS 中输入两个相同的端点。现在我无法删除这些端点。有人知道我该怎么办吗? 端点 删除端点时出错 我也尝试过删除 VIP 和保留
我将 Azure Media Services v3 与 Azure Function v3 应用程序结合使用,在尝试从 https url 创建新作业时遇到问题。 我在提交作业的 Azure Fun
我想使用基于查询的 PowerShell 创建日志警报。我按照 https://learn.microsoft.com/en-us/azure/azure-monitor/platform/alert
此处使用 .net core Web api。 我的 api 中有一个端点: [HttpPost("data")] public async Task PostData(List udata) {
我正在开发一个 Spring 应用程序,目前我正在对我们的客户注册表实现搜索。 我们用户请求的一个关键点是最多可以对以下参数中的一个进行搜索:名称OR id(可以是部分)OR 店铺id(顾客注册的店铺
我将 Azure Media Services v3 与 Azure Function v3 应用程序结合使用,在尝试从 https url 创建新作业时遇到问题。 我在提交作业的 Azure Fun
我想使用基于查询的 PowerShell 创建日志警报。我按照 https://learn.microsoft.com/en-us/azure/azure-monitor/platform/alert
此处使用 .net core Web api。 我的 api 中有一个端点: [HttpPost("data")] public async Task PostData(List udata) {
我正在编写一个 x11 剪贴板客户端,但 INCR 遇到了困难。基本上,我的问题是,当我调用 XDeleteProperty 来启动 INCR 传输时,我收到了 BadRequest 错误代码 这是一
我是一名优秀的程序员,十分优秀!