重构项目
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
|
}, 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 渲染调试页面
|
// renderDebugPage 渲染调试页面
|
||||||
func renderDebugPage(writer http.ResponseWriter, outputBuffer, logBuffer *strings.Builder, jsError error) error {
|
func renderDebugPage(writer http.ResponseWriter, outputBuffer, logBuffer *strings.Builder, jsError error) error {
|
||||||
writer.Header().Set("Content-Type", "text/html; charset=utf-8")
|
writer.Header().Set("Content-Type", "text/html; charset=utf-8")
|
||||||
|
|||||||
Reference in New Issue
Block a user