fs: Remove ServeContent function

This commit is contained in:
Adnan Maolood 2021-04-21 11:41:40 -04:00
parent de93d44786
commit 3bc243dd66

24
fs.go
View File

@ -33,24 +33,6 @@ func (fs fileServer) ServeGemini(ctx context.Context, w ResponseWriter, r *Reque
serveFile(w, r, fs, path.Clean(r.URL.Path), true)
}
// ServeContent replies to the request using the content in the
// provided Reader. The main benefit of ServeContent over io.Copy
// is that it sets the MIME type of the response.
//
// ServeContent tries to deduce the type from name's file extension.
// The name is otherwise unused; it is never sent in the response.
func ServeContent(w ResponseWriter, r *Request, name string, content io.Reader) {
serveContent(w, name, content)
}
func serveContent(w ResponseWriter, name string, content io.Reader) {
// Detect mimetype from file extension
ext := path.Ext(name)
mimetype := mime.TypeByExtension(ext)
w.SetMediaType(mimetype)
io.Copy(w, content)
}
// ServeFile responds to the request with the contents of the named file
// or directory.
//
@ -171,7 +153,11 @@ func serveFile(w ResponseWriter, r *Request, fsys fs.FS, name string, redirect b
return
}
serveContent(w, name, f)
// Detect mimetype from file extension
ext := path.Ext(name)
mimetype := mime.TypeByExtension(ext)
w.SetMediaType(mimetype)
io.Copy(w, f)
}
func dirList(w ResponseWriter, f fs.File) {