重构项目
This commit is contained in:
39
pkg/filters/quickjs/debug.go
Normal file
39
pkg/filters/quickjs/debug.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package quickjs
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
type DebugData struct {
|
||||
Status int `json:"status"`
|
||||
Header http.Header `json:"header"`
|
||||
Body string `json:"body"`
|
||||
Logs []DebugDataLog `json:"logs"`
|
||||
}
|
||||
|
||||
type DebugDataLog struct {
|
||||
Level string `json:"level"`
|
||||
Time time.Time `json:"time"`
|
||||
Message string `json:"message"`
|
||||
}
|
||||
|
||||
// debugResponseWriter 用于在 debug 模式下捕获响应输出
|
||||
type debugResponseWriter struct {
|
||||
buffer *strings.Builder
|
||||
header http.Header
|
||||
status int
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) Header() http.Header {
|
||||
return w.header
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) Write(data []byte) (int, error) {
|
||||
return w.buffer.Write(data)
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) WriteHeader(statusCode int) {
|
||||
w.status = statusCode
|
||||
}
|
||||
@@ -79,25 +79,6 @@ var FilterInstQuickJS core.FilterInstance = func(config core.FilterParams) (core
|
||||
}, nil
|
||||
}
|
||||
|
||||
// debugResponseWriter 用于在 debug 模式下捕获响应输出
|
||||
type debugResponseWriter struct {
|
||||
buffer *strings.Builder
|
||||
header http.Header
|
||||
status int
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) Header() http.Header {
|
||||
return w.header
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) Write(data []byte) (int, error) {
|
||||
return w.buffer.Write(data)
|
||||
}
|
||||
|
||||
func (w *debugResponseWriter) WriteHeader(statusCode int) {
|
||||
w.status = statusCode
|
||||
}
|
||||
|
||||
// renderDebugPage 渲染调试页面
|
||||
func renderDebugPage(writer http.ResponseWriter, outputBuffer, logBuffer *strings.Builder, jsError error) error {
|
||||
writer.Header().Set("Content-Type", "text/html; charset=utf-8")
|
||||
|
||||
Reference in New Issue
Block a user