From 7150628beecf9d81b43d4a58dac1614acb449e19 Mon Sep 17 00:00:00 2001 From: xc Date: Fri, 22 Aug 2025 18:06:50 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E7=B3=BB=E7=BB=9F=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aufs/core/setting.go | 60 +++++++++++++++++++++++++++++++------------ aufs/db/servDb.go | 10 +++++--- aufs/main.go | 4 ++- aufs/ups.db | Bin 16384 -> 16384 bytes 4 files changed, 53 insertions(+), 21 deletions(-) diff --git a/aufs/core/setting.go b/aufs/core/setting.go index 0350645..380e8b9 100644 --- a/aufs/core/setting.go +++ b/aufs/core/setting.go @@ -1,37 +1,65 @@ package core import ( + "aufs/db" + "encoding/json" "fmt" + "log" "net/http" "github.com/jmoiron/sqlx" + _ "github.com/logoove/sqlite" ) +// 输出的结构 +type ScJson struct { + Message string `json:"message"` + Status int `json:"status"` + Data []db.StServerInfo `json:"data"` +} + // 系统设置 func Settdb(w http.ResponseWriter, r *http.Request) { // 检查数据表是否存在 - scdb, err := sqlx.Open("sqlite3", "./sc.db") + scdb, err := sqlx.Open("sqlite", "./ups.db") if err != nil { fmt.Printf("Failed to open database: %v\n", err) return } defer scdb.Close() - //创建服务表 - sts := ` - CREATE TABLE sc_server ( - id INTEGER PRIMARY KEY NOT NULL PRIMARY KEY AUTOINCREMENT, - scname TEXT NOT NULL, - addr TEXT NOT NULL, - port TEXT NOT NULL, - token TEXT NOT NULL, - status INTEGER NOT NULL - );` - // 执行建表语句 - _, err = scdb.Exec(sts) + // 如果表sc_server不存在,则创建 + _, err = scdb.Exec("SELECT name FROM sqlite_master WHERE type='table' AND name='sc_server'") if err != nil { - fmt.Printf("Failed to create database table: %v\n", err) - return + // cuowu + log.Fatalf("table has exists:%s", err) } - fmt.Printf("Successfully created database table! \n") + //如果表存在 + sclst := db.GetlScList() + // + scresp := ScJson{ + Message: "success", + Status: 200, + Data: sclst, + } + uCorsHadler(w, r) + json.NewEncoder(w).Encode(scresp) + + // 表不存在,创建表 + // sts := ` + // CREATE TABLE IF NOT EXISTS sc_server ( + // id INTEGER PRIMARY KEY NOT NULL, + // scname TEXT NOT NULL, + // addr TEXT NOT NULL, + // port TEXT NOT NULL, + // token TEXT NOT NULL, + // status INTEGER NOT NULL + // );` + // 执行建表语句 + // _, err = scdb.Exec(sts) + // if err != nil { + // fmt.Printf("Failed to create database table: %v\n", err) + // return + // } + // fmt.Printf("Successfully created database table! \n") } diff --git a/aufs/db/servDb.go b/aufs/db/servDb.go index 61e9e75..4e86d18 100644 --- a/aufs/db/servDb.go +++ b/aufs/db/servDb.go @@ -40,9 +40,9 @@ func AddServerInfo(info *StServerInfo) error { } // 查询所有的记录 -func GetlScList() (sclist []StFileInfo) { +func GetlScList() (sclist []StServerInfo) { // 结果集 - sclist = make([]StFileInfo, 0) + sclist = make([]StServerInfo, 0) // 查询语句 rows, err := db.Query("SELECT * FROM f_info WHERE fpbs = ?") @@ -54,8 +54,10 @@ func GetlScList() (sclist []StFileInfo) { // FOR loop for rows.Next() { // var weight float64 - var st StFileInfo - err = rows.Scan(&st.Id, &st.Fname, &st.Fpath, &st.Fhash) + var st StServerInfo + //将赋值到对应的字段上 + err = rows.Scan(&st.Id, &st.Port, &st.Scname, &st.Status, &st.Token) + if err != nil { fmt.Printf("Failed to read data: %v\n", err) continue diff --git a/aufs/main.go b/aufs/main.go index 6dba790..6611986 100644 --- a/aufs/main.go +++ b/aufs/main.go @@ -30,12 +30,14 @@ func startWeb() { // http.HandleFunc("/sendZip", core.SendZip) // 系统监控 http.HandleFunc("/sysinfo", core.SysMonitor) + //保存监听的服务器 + http.HandleFunc("/scdb", core.Settdb) // 内存信息 http.HandleFunc("/dtmem", core.Dtmem) // 启动HTTP服务器并监听端口 80,如果出现错误,则打印错误信息并退出 - fmt.Printf("Starting server at port:" + config.G.Port) + fmt.Printf("Starting server at port:%v\n", config.G.Port) sport := fmt.Sprintf(":%v", config.G.Port) if err := http.ListenAndServe(sport, nil); err != nil { log.Fatal(err) diff --git a/aufs/ups.db b/aufs/ups.db index 3b76a159ca8e79ae91248a5a95bd86ab4cf9becf..1278718c3b2d8183cda948ad52d495c63b33b92e 100644 GIT binary patch delta 384 zcmZo@U~Fh$oFFa8#lXP80>n%}%m~C>6LpM%f_nb7yu7y(ft7nhf3Y<4V3Ov*_uPL3~5Ehf@sWS6G~!mzbNX5aJpEl!3_BBS|Nw zq!gh@BFPox7nR_WE6LAJ&BG;GT#{H)S`2p}%u!%BX#xWX7)TJnyjf7-3;!eo7B)uy yyA1qyf!xdd%8HEa4C3;lvYbB7{*FF|M&^13Kxk-bU}@=-lAoLtl3KjTKmY*!#9U4Q delta 85 zcmZo@U~Fh$oFFa8!oa`)!c0)iI#I_MD5&RO%gcL