diff --git a/Web/list.html b/Web/list.html
new file mode 100644
index 0000000..803cff2
--- /dev/null
+++ b/Web/list.html
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+ 图片展示页
+
+
+
+
+
+
+
+
+
diff --git a/database/db.go b/database/db.go
index 6e52890..e26838f 100644
--- a/database/db.go
+++ b/database/db.go
@@ -83,4 +83,34 @@ func GetFileName(linkID string) string {
return ""
}
return md5+ext
+}
+
+func QueryId() ([]string, error) {
+ var result []string
+
+ db, err := sql.Open("sqlite3", "./data/database.db")
+ if err != nil {
+ log.Fatal(err)
+ }
+ defer db.Close()
+
+ rows, err := db.Query("SELECT link FROM mytable")
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+
+ for rows.Next() {
+ var name string
+ if err := rows.Scan(&name); err != nil {
+ return nil, err
+ }
+ result = append(result, name)
+ }
+
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+
+ return result, nil
}
\ No newline at end of file
diff --git a/main.go b/main.go
index e977b50..ce60cd7 100644
--- a/main.go
+++ b/main.go
@@ -3,6 +3,7 @@ package main
import (
"Pixel/database"
"crypto/md5"
+ "encoding/json"
"fmt"
"html/template"
"image"
@@ -63,9 +64,11 @@ func init() {
func main() {
http.HandleFunc("/info", showimg)
+ http.HandleFunc("/info/list", showlist)
http.HandleFunc("/upload", upload)
http.HandleFunc("/img/",downloadHandler)//设置访问的路由
http.HandleFunc("/img/mini",displayThumbnailHandler)
+ http.HandleFunc("/idlist",arrayHandler)
fmt.Println("Web服务器已启动")
err := http.ListenAndServe(":9090", nil) //设置监听的端口
if err != nil {
@@ -78,6 +81,11 @@ func showimg(w http.ResponseWriter, r *http.Request) {
t.Execute(w, "Hello")
}
+func showlist(w http.ResponseWriter, r *http.Request) {
+ t, _ := template.ParseFiles("Web/list.html")
+ t.Execute(w, "Hello")
+}
+
// 处理/upload 逻辑
func upload(w http.ResponseWriter, r *http.Request) {
@@ -230,3 +238,24 @@ func displayThumbnailHandler(w http.ResponseWriter, r *http.Request) {
return
}
}
+
+func arrayHandler(w http.ResponseWriter, r *http.Request) {
+ // 获取数组数据
+ data, err := database.QueryId()
+ if err != nil {
+ http.Error(w, "数组数据获取失败", http.StatusInternalServerError)
+ return
+ }
+ // 将数组数据转换为 JSON 格式
+ responseData, err := json.Marshal(data)
+ if err != nil {
+ http.Error(w, "无法处理数组数据", http.StatusInternalServerError)
+ return
+ }
+
+ // 设置响应头,指定内容类型为 JSON
+ w.Header().Set("Content-Type", "application/json")
+
+ // 将 JSON 数据写入响应体
+ w.Write(responseData)
+}