/// <summary> /// 判断Session的地方 /// </summary> /// <param name="context"></param> /// <returns></returns> public async Task Invoke(HttpContext context) { if (context.Request.Method == "OPTIONS") { await _next.Invoke(context); } var url = context.Request.Path.ToString().ToLower(); if (CheckSessionWhiteList(url)) { await _next.Invoke(context); } else { string sessionId = context.Request.Headers["SessionId"]; context.Items.Add("SessionId", sessionId); var check = CheckSessionId(sessionId); if (check) { await _next.Invoke(context); } else { await MiddlewareExtensions.HandleExceptionAsync(context, 802, "SessionId 验证失败"); } } }
public async Task Invoke(HttpContext context) { try { await _next.Invoke(context); } catch (Exception ex) { await MiddlewareExtensions.HandleExceptionAsync(context, 505, "服务端发生错误:" + ex.Message); _logger.LogError(ex.Message, ex); } }