从Asp.Net MVC 6 API返回JSON错误
发布时间:2020-12-31 01:39:38 所属栏目:asp.Net 来源:互联网
导读:我正在尝试使用MVC 6构建一个Web API.但是当我的一个控制器方法抛出一个错误时,响应的内容是一个格式很好的 HTML页面,这是一个非常丰富的MVC应用程序.但是,由于这是一个API,我宁愿返回一些 JSON. 注意:我的设置现在超级基本,只需设置: app.UseStaticFiles()
我正在尝试使用MVC 6构建一个Web API.但是当我的一个控制器方法抛出一个错误时,响应的内容是一个格式很好的 HTML页面,这是一个非常丰富的MVC应用程序.但是,由于这是一个API,我宁愿返回一些 JSON. 注意:我的设置现在超级基本,只需设置: app.UseStaticFiles(); app.UseIdentity(); // Add MVC to the request pipeline. app.UseMvc(); 我想要普遍设置这个.是否有一个“正确/最好”的方法来设置在MVC 6中的一个API? 谢谢… 解决方法实现您的方案的一种方法是编写一个ExceptionFilter,并捕获必要的细节,并将Result设置为JsonResult.// Here I am creating an attribute so that you can use it on specific controllers/actions if you want to. public class CustomExceptionFilterAttribute : ExceptionFilterAttribute { public override void OnException(ExceptionContext context) { var exception = context.Exception; context.Result = new JsonResult(/*Your POCO type having necessary details*/) { StatusCode = (int)HttpStatusCode.InternalServerError }; } } 您可以将此异常过滤器添加到适用于所有控制器. app.UseServices(services => { services.AddMvc(); services.Configure<MvcOptions>(options => { options.Filters.Add(new CustomExceptionFilterAttribute()); }); ..... } 请注意,此解决方案不涵盖所有方案…例如,当由格式化程序写入响应时抛出异常. (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用asp.net mvc 2功能与火花浏览引擎
- ASP.NET 根据汉字获取汉字拼音的首字母(含多音字)
- asp.net-mvc – ASP.NET MVC 3 Beta 1 Block访问Razor视图
- asp.net – FormsAuthentication.GetRedirectUrl始终返回默
- ASP.NET缓存管理的几种方法
- 如何在不使用MembershipProvider的情况下使用ASP.NET登录控
- asp.net – IE10中的LinkButtons不执行回发
- asp.net – 我可以愚弄HttpRequest.Current.Request.IsLoca
- asp.net-mvc-3 – 在MVC Razor View中使用If语句
- 在ASP.NET中,获取基本UR1请求的最快方法是什么?
推荐文章
站长推荐
- asp.net – 在剃刀中等同于End / Response.End?
- asp.net – Umbraco CMS(.NET):加载xslt /用户控
- asp.net-mvc-2 – 使用’class(或其他保留关键字
- asp.net-web-api – Web Api:找不到System.Net.
- asp.net-mvc – 如何使输入字段仅允许使用EF和数
- asp.net 根据汉字的拼音首字母搜索数据库(附 LIN
- asp.net-core – ASP.Net 5类库中的EntityFramew
- asp.net-mvc – 你如何指定在列表框中显示多少项
- asp.net – 在为app_offline.htm提供特定URL时,将
- asp.net中使用repeater和PageDataSource搭配实现
热点阅读