Commit f2fb28cf by Apple\Apple

feat(controller): gracefully handle missing Uptime Kuma configuration

Previously, the uptime status endpoint returned HTTP 400 with
“未配置 Uptime Kuma URL/Slug” when either option was not set, resulting in
frontend error states.

Changes:
• Treat absence of `UptimeKumaUrl` or `UptimeKumaSlug` as a valid scenario.
• Immediately respond with HTTP 200, `success: true`, and an empty `data` array.
• Preserve existing behavior when both options are provided.

This prevents unnecessary error notifications on the dashboard when
Uptime Kuma integration is not configured and improves overall UX.
parent b6272de0
......@@ -82,18 +82,11 @@ func GetUptimeKumaStatus(c *gin.Context) {
slug := common.OptionMap["UptimeKumaSlug"]
common.OptionMapRWMutex.RUnlock()
if uptimeKumaUrl == "" {
c.JSON(http.StatusBadRequest, gin.H{
"success": false,
"message": "未配置 Uptime Kuma URL",
})
return
}
if slug == "" {
c.JSON(http.StatusBadRequest, gin.H{
"success": false,
"message": "未配置 Uptime Kuma Slug",
if uptimeKumaUrl == "" || slug == "" {
c.JSON(http.StatusOK, gin.H{
"success": true,
"message": "",
"data": []MonitorStatus{},
})
return
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment