Detect the Content Type of File in Golang

package main

import (
    "fmt"
    "net/http"
    "os"
)

func GetFileContentType(file *os.File) (string, error) {
    buffer := make([]byte, 512)
    _, err := file.Read(buffer)
    if err != nil {
        return "", err
    }
    contentType := http.DetectContentType(buffer)
    return contentType, nil
}

func main() {

    file, _ := os.Open("a.txt")
    fileType, _ := GetFileContentType(file)
    fmt.Println("file type:", fileType)

}    
        
file type: application/octet-stream