PrivHunterAI/index.go

58 lines
1.2 KiB
Go
Raw Normal View History

2025-02-26 12:34:34 +08:00
package main
import (
"net/http"
"github.com/gin-gonic/gin"
)
2025-03-23 10:56:36 +08:00
var Resp []Result // 数据存储在全局切片中
2025-02-26 12:34:34 +08:00
func Index() {
r := gin.Default()
// 初始化数据
// initData()
// 提供前端静态文件服务
r.LoadHTMLFiles("index.html") // 加载前端页面
r.GET("/", func(c *gin.Context) {
c.HTML(http.StatusOK, "index.html", nil)
})
// 提供 API 接口
r.GET("/data", func(c *gin.Context) {
c.JSON(http.StatusOK, Resp)
})
r.POST("/update", func(c *gin.Context) {
2025-03-23 10:56:36 +08:00
var newData Result
2025-02-26 12:34:34 +08:00
if err := c.ShouldBindJSON(&newData); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
Resp = append(Resp, newData)
c.JSON(http.StatusOK, gin.H{"message": "Data updated successfully"})
})
r.POST("/filter", func(c *gin.Context) {
var filterData struct {
Result string `json:"result"`
}
if err := c.ShouldBindJSON(&filterData); err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
2025-03-23 10:56:36 +08:00
filteredData := []Result{}
2025-02-26 12:34:34 +08:00
for _, item := range Resp {
if item.Result == filterData.Result {
filteredData = append(filteredData, item)
}
}
c.JSON(http.StatusOK, filteredData)
})
// 启动服务
r.Run(":8222")
}