当前位置: 首页 > news >正文

网站文案设计2017网站趋势

网站文案设计,2017网站趋势,哈尔滨网站制作维护,网站建设销售技巧asp.net core 2.0使用JWT认证园子里已经有挺多帖子了#xff0c;但开发中发现认证未授权情况下返回的401状态码是没有任何信息的#xff0c;业务中可能有需要返回一串错误的Json信息。在这里我分享一个自定义错误页面内容信息的方法#xff0c;使用该扩展方法还可以捕获异常…  asp.net core 2.0使用JWT认证园子里已经有挺多帖子了但开发中发现认证未授权情况下返回的401状态码是没有任何信息的业务中可能有需要返回一串错误的Json信息。在这里我分享一个自定义错误页面内容信息的方法使用该扩展方法还可以捕获异常将异常信息也转为json。   1.新建一个Api接口统一返回类ApiResult.cs可替换成自己的。 using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks;namespace Jom.WebApi.Config {public class ApiResult{public bool Success { get; set; } true;public string Msg { get; set; } ;public string Type { get; set; } ;public object Data { get; set; } ;public object DataExt { get; set; } ;} }   2.建立中间件ErrorHandlingMiddleware.cs using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks;namespace Jom.WebApi.Config {public class ErrorHandlingMiddleware{private readonly RequestDelegate next;public ErrorHandlingMiddleware(RequestDelegate next){this.next next;}public async Task Invoke(HttpContext context){try{await next(context);}catch (Exception ex){var statusCode context.Response.StatusCode;if (ex is ArgumentException){statusCode 200;}await HandleExceptionAsync(context, statusCode, ex.Message);}finally{var statusCode context.Response.StatusCode;var msg ;if (statusCode 401){msg 未授权;}else if (statusCode 404){msg 未找到服务;}else if (statusCode 502){msg 请求错误;}else if (statusCode ! 200){msg 未知错误;}if (!string.IsNullOrWhiteSpace(msg)){await HandleExceptionAsync(context, statusCode, msg);}}}//异常错误信息捕获将错误信息用Json方式返回private static Task HandleExceptionAsync(HttpContext context, int statusCode, string msg){var result JsonConvert.SerializeObject(new ApiResult() { Successfalse,Msgmsg,Type statusCode.ToString() });context.Response.ContentType application/json;charsetutf-8;return context.Response.WriteAsync(result);}}//扩展方法public static class ErrorHandlingExtensions{public static IApplicationBuilder UseErrorHandling(this IApplicationBuilder builder){return builder.UseMiddlewareErrorHandlingMiddleware();}} }   3.最后只要在Startup.cs中的Configure方法中加上一句在Startup.cs中添加引用using Jom.WebApi.Config;使用扩展方法ErrorHandlingExtensions()使用错误码处理中间件。 //请求错误提示配置app.UseErrorHandling();   完整的Configure方法 public void Configure(IApplicationBuilder app, IHostingEnvironment env){if (env.IsDevelopment()){app.UseDeveloperExceptionPage();}//请求错误提示配置app.UseErrorHandling();//使用认证授权app.UseAuthentication();//使用mvcapp.UseMvc(routes {routes.MapRoute(name: default,template: api/{controller}/{action}/{id?},defaults: new { controller Values, action Get });});}   最后就完成了自定义401页面内容同时还可以定义其他状态码如403404502503等等同时api接口报异常也将转化为特定的JSON格式。 postman中请求返回  转载于:https://www.cnblogs.com/jomzhang/p/9253647.html
http://wiki.neutronadmin.com/news/321563/

相关文章:

  • 已有网站开发app客户端宁夏建设管理局网站
  • 网站上怎么做弹目提醒wordpress 所有页面空白
  • 唐山网站制作价格长沙网站排名方案
  • wordpress 足球seo短视频网页入口营销
  • 个人做什么类型网站网站建设初学者教程
  • 网站开发 需求文档WordPress中文空格
  • 网站可以跳转备案吗怎么用电脑自带软件做网站页面
  • 建网站大约得用多少钱济南市住房和城乡建设厅官网
  • 保定网站建设维护wordpress首页无法找到
  • 免费网站优化怎么做微信上怎么创建公众号
  • 正规的网站建设公济南招聘网最新招聘
  • 备案做电影网站百姓网推广一年多少钱
  • dw旅游网站怎么做企业网站ui
  • 做淘宝客网站赚钱吗cms网站建设有多少条数据
  • 临夏城乡建设局网站wordpress流量插件
  • 网站制作用的软件大型建设工程类考试辅导网站
  • 做网站开发很赚钱吗开通网站申请书
  • 网站建设 精品课程墨猴seo排名公司
  • 建设网站所采用的技术响应式网站微博视频教程
  • 观澜做网站山西做网站的企业
  • 搭建网站手机软件wordpress产品模板
  • 公司网站怎么做啊wordpress能输数学公式吗
  • 云服务器可以做几个网站如何做网站 百度
  • 网站设计制作哪家服务好石景山网站建设公司
  • 企业网站有那些建设网站导航怎么盈利
  • 东莞市建网站中铁建设集团集网登录
  • 网站建设中 html5 模板wordpress编辑器替换
  • 东阳海天建设集团网站网络舆情处理公司
  • 网站素材模板 站长现在做微信开发网站多少钱
  • 幼教资源网网站开发策划书陌陌引流推广软件