diff --git a/UI/Controllers/UpgradeController.cs b/UI/Controllers/UpgradeController.cs index a1309ea..2fe41ee 100644 --- a/UI/Controllers/UpgradeController.cs +++ b/UI/Controllers/UpgradeController.cs @@ -458,39 +458,36 @@ namespace UI.Controllers [HttpPost] public ActionResult GetRoomAddressStatus(int Code, string RoomNum) { - RoomAddressStatus roomAddressStatus = new RoomAddressStatus - { - Code = Code, - RoomNum = RoomNum - }; try { - if (roomAddressStatus == null) + if (string.IsNullOrWhiteSpace(RoomNum)) { + Response.TrySkipIisCustomErrors = true; Response.StatusCode = (int)HttpStatusCode.BadRequest; - return Json(new { Status = 0, Message = "请求参数不能为空" }, JsonRequestBehavior.DenyGet); + return Json(new { Status = 0, Message = "请求参数不能为空" }, JsonRequestBehavior.AllowGet); } - string code = roomAddressStatus.Code.ToString(); - string RoomNumVal = roomAddressStatus.RoomNum ?? string.Empty; + string code = Code.ToString(); + string RoomNumVal = RoomNum; string key = $"WXFault_{code}_{RoomNumVal}"; var result = CSRedisCacheHelper.HMGetAll(key); if (result != null && result.Count > 0) { - return Json(new { Status = 1, Message = "获取成功", Data = result }, JsonRequestBehavior.DenyGet); + return Json(new { Status = 1, Message = "获取成功", Data = result }, JsonRequestBehavior.AllowGet); } else { - Response.StatusCode = (int)HttpStatusCode.NotFound; - return Json(new { Status = 0, Message = "未找到数据", Data = result }, JsonRequestBehavior.DenyGet); + // 业务层未找到数据:不返回 HTTP 404,避免 IIS 自定义 404 页覆盖 JSON + return Json(new { Status = 1, Message = "未找到数据", Data = result }, JsonRequestBehavior.AllowGet); } } catch (Exception ex) { logger.Error(ex, "GetRoomAddressStatus error"); + Response.TrySkipIisCustomErrors = true; Response.StatusCode = (int)HttpStatusCode.InternalServerError; - return Json(new { Status = -1, Message = "服务器错误", Detail = ex.Message }, JsonRequestBehavior.DenyGet); + return Json(new { Status = -1, Message = "服务器错误", Detail = ex.Message }, JsonRequestBehavior.AllowGet); } }