diff --git a/internal/handler/autoindex.go b/internal/handler/autoindex.go
index da2e68a..7c88a3b 100644
--- a/internal/handler/autoindex.go
+++ b/internal/handler/autoindex.go
@@ -80,7 +80,7 @@ func readDirectory(dirPath string) ([]dirEntry, error) {
if err != nil {
return nil, err
}
- defer dir.Close()
+ defer func() { _ = dir.Close() }()
infos, err := dir.Readdir(-1)
if err != nil {
@@ -117,7 +117,7 @@ func generateHTMLIndex(ctx *fasthttp.RequestCtx, reqPath string, entries []dirEn
// HTML 头部
buf.WriteString("\n")
buf.WriteString("\n
\n")
- buf.WriteString(fmt.Sprintf("Index of %s\n", html.EscapeString(reqPath)))
+ fmt.Fprintf(&buf, "Index of %s\n", html.EscapeString(reqPath))
buf.WriteString("\n")
buf.WriteString("\n\n")
- buf.WriteString(fmt.Sprintf("Index of %s
\n", html.EscapeString(reqPath)))
+ fmt.Fprintf(&buf, "Index of %s
\n", html.EscapeString(reqPath))
buf.WriteString("
\n\n")
buf.WriteString("| Name | Modified | Size |
\n")
buf.WriteString("\n")
@@ -167,8 +167,8 @@ func generateHTMLIndex(ctx *fasthttp.RequestCtx, reqPath string, entries []dirEn
sizeStr = formatSize(entry.Size)
}
- buf.WriteString(fmt.Sprintf("| %s | %s | %s |
\n",
- href, html.EscapeString(displayName), timeStr, sizeStr))
+ fmt.Fprintf(&buf, "| %s | %s | %s |
\n",
+ href, html.EscapeString(displayName), timeStr, sizeStr)
}
buf.WriteString("\n
\n
\n\n\n")
@@ -179,7 +179,7 @@ func generateHTMLIndex(ctx *fasthttp.RequestCtx, reqPath string, entries []dirEn
}
// generateJSONIndex 生成 JSON 格式的目录列表。
-func generateJSONIndex(ctx *fasthttp.RequestCtx, reqPath string, entries []dirEntry) {
+func generateJSONIndex(ctx *fasthttp.RequestCtx, _ string, entries []dirEntry) {
type jsonEntry struct {
Name string `json:"name"`
Type string `json:"type"`
@@ -277,4 +277,3 @@ func formatSize(size int64) string {
return fmt.Sprintf("%d", size)
}
}
-
diff --git a/internal/handler/autoindex_test.go b/internal/handler/autoindex_test.go
index 4104065..37cff34 100644
--- a/internal/handler/autoindex_test.go
+++ b/internal/handler/autoindex_test.go
@@ -404,7 +404,7 @@ func BenchmarkGenerateAutoIndex_HTML(b *testing.B) {
defer os.RemoveAll(tmpDir)
// 创建 100 个文件
- for i := 0; i < 100; i++ {
+ for i := range 100 {
if err := os.WriteFile(filepath.Join(tmpDir, fmt.Sprintf("file%d.txt", i)), []byte("content"), 0o644); err != nil {
b.Fatal(err)
}