using System; using System.Net; using System.Net.Http; using System.Web.Http; using RevitHttpControl.Models; using RevitHttpControl.Services; namespace RevitHttpControl.Controllers { /// /// 健康检查控制器 /// [RoutePrefix("api")] public class HealthController : ApiController { /// /// 获取服务健康状态 /// /// 健康检查响应 [HttpGet] [Route("health")] public HttpResponseMessage GetHealth() { try { var healthData = new HealthData { ServerStatus = "running", RevitVersion = "2017", CurrentDocument = RevitService.GetCurrentDocumentInfo() }; var response = new ApiResponse { Success = true, Code = 200, Message = "服务正常", Data = healthData }; return Request.CreateResponse(HttpStatusCode.OK, response); } catch (Exception ex) { var errorResponse = new ApiResponse { Success = false, Code = 500, Message = "服务器内部错误", Data = new { error = "INTERNAL_ERROR", errorDescription = ex.Message } }; return Request.CreateResponse(HttpStatusCode.InternalServerError, errorResponse); } } } }