mirror of
https://github.com/black-ant/Ant-Browser.git
synced 2026-07-14 18:48:55 +08:00
channel: master
version: 1.2.0
source-ref: D:\code\open_source\ant-chrome master
source-commit: f3d7ec5
merged-public-base: 3d264eb
43 lines
1.6 KiB
Go
43 lines
1.6 KiB
Go
package launchcode
|
|
|
|
import "net/http"
|
|
|
|
func (s *LaunchServer) buildMux() *http.ServeMux {
|
|
mux := http.NewServeMux()
|
|
mux.HandleFunc("/api/health", s.handleHealth)
|
|
mux.HandleFunc("/api/automation/scripts", s.handleAutomationScripts)
|
|
mux.HandleFunc("/api/automation/scripts/", s.handleAutomationScriptByID)
|
|
mux.HandleFunc("/api/automation/scripts/run", s.handleAutomationScriptRun)
|
|
mux.HandleFunc("/api/automation/scripts/runs", s.handleAutomationScriptRuns)
|
|
mux.HandleFunc("/api/profiles", s.handleProfiles)
|
|
mux.HandleFunc("/api/profiles/", s.handleProfileByID)
|
|
mux.HandleFunc("/api/runtime/active", s.handleRuntimeActive)
|
|
mux.HandleFunc("/api/runtime/session", s.handleRuntimeSession)
|
|
mux.HandleFunc("/api/runtime/status", s.handleRuntimeStatus)
|
|
mux.HandleFunc("/api/runtime/stop", s.handleRuntimeStop)
|
|
mux.HandleFunc("/api/launch", s.handleLaunchWithBody)
|
|
mux.HandleFunc("/api/launch/logs", s.handleLaunchLogs)
|
|
mux.HandleFunc("/api/launch/", s.handleLaunch)
|
|
mux.HandleFunc("/", s.handleCDPProxy)
|
|
return mux
|
|
}
|
|
|
|
func (s *LaunchServer) buildHandler(includeLocalhost bool) http.Handler {
|
|
var handler http.Handler = s.buildMux()
|
|
handler = s.apiAuthMiddleware(handler)
|
|
if includeLocalhost {
|
|
handler = s.localhostMiddleware(handler)
|
|
}
|
|
return handler
|
|
}
|
|
|
|
// handleHealth GET /api/health
|
|
func (s *LaunchServer) handleHealth(w http.ResponseWriter, r *http.Request) {
|
|
writeJSON(w, http.StatusOK, map[string]interface{}{"ok": true})
|
|
}
|
|
|
|
// NewTestHandler 返回不含 localhost 限制的 handler,仅供测试使用
|
|
func NewTestHandler(s *LaunchServer) http.Handler {
|
|
return s.buildHandler(false)
|
|
}
|