diff --git a/cmd/bilidown/main.go b/cmd/bilidown/main.go index 665243c..1ba26a0 100644 --- a/cmd/bilidown/main.go +++ b/cmd/bilidown/main.go @@ -7,7 +7,6 @@ import ( "io/fs" "log" "net/http" - "os" "bilidown/internal/router" "bilidown/internal/util" @@ -59,13 +58,6 @@ func mustRunServer() { http.HandleFunc("/api/checkFFmpeg", func(w http.ResponseWriter, r *http.Request) { util.Res{Success: true, Data: map[string]bool{"available": ffmpegAvailable}}.Write(w) }) - // 添加关闭服务接口 - http.HandleFunc("/api/shutdown", func(w http.ResponseWriter, r *http.Request) { - util.Res{Success: true, Message: "Shutting down..."}.Write(w) - go func() { - os.Exit(0) - }() - }) http.Handle("/api/", http.StripPrefix("/api", apiRouter)) // 启动 HTTP 服务器 go func() { diff --git a/internal/router/router.go b/internal/router/router.go index fdd225d..e673125 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -25,7 +25,6 @@ func API() *http.ServeMux { router.HandleFunc("/getFields", getFields) router.HandleFunc("/saveFields", saveFields) router.HandleFunc("/logout", logout) - router.HandleFunc("/quit", quit) router.HandleFunc("/getPopularVideos", getPopularVideos) router.HandleFunc("/deleteTask", deleteTask) router.HandleFunc("/cancelTask", cancelTask) @@ -55,13 +54,6 @@ func getRedirectedLocation(w http.ResponseWriter, r *http.Request) { } } -func quit(w http.ResponseWriter, r *http.Request) { - util.Res{Success: true, Message: "退出成功"}.Write(w) - go func() { - os.Exit(0) - }() -} - func getFields(w http.ResponseWriter, r *http.Request) { db := util.MustGetDB() defer db.Close() diff --git a/web/src/header.ts b/web/src/header.ts index ddc8ca6..748fb38 100644 --- a/web/src/header.ts +++ b/web/src/header.ts @@ -2,7 +2,7 @@ import van from 'vanjs-core' import { now } from 'vanjs-router' import { GLOBAL_HAS_LOGIN, getApi } from './mixin' -const { a, div, button, span } = van.tags +const { a, div, span } = van.tags export const FFmpegAvailable = van.state(null) @@ -18,12 +18,6 @@ export const checkFFmpeg = async () => { export default () => { const classStr = (name: string) => van.derive(() => `text-nowrap nav-link ${now.val.split('/')[0] == name ? 'active' : ''}`) - const shutdown = async () => { - if (confirm('确定要关闭服务吗?')) { - await getApi('/shutdown') - } - } - return div({ class: 'hstack gap-4' }, div({ class: 'fs-4 fw-bold text-nowrap' }, 'Bilidown'), div({ class: 'nav nav-underline flex-nowrap overflow-auto' }, @@ -46,9 +40,7 @@ export default () => { span({ class: () => `badge ${FFmpegAvailable.val === true ? 'bg-success' : FFmpegAvailable.val === false ? 'bg-danger' : 'bg-secondary'}` }, () => FFmpegAvailable.val === true ? 'FFmpeg ✓' : FFmpegAvailable.val === false ? 'FFmpeg ✗' : '检查中...' ) - ), - // 关闭按钮 - button({ class: 'btn btn-outline-danger btn-sm', onclick: shutdown }, '关闭服务') + ) ) ) } \ No newline at end of file