2014-12-02 108 views
1

的 “网/ HTTP” 包实现的功能DetectContentTypeGolang “网/ HTTP” 错误:未定义:DetectContentType

http://golang.org/pkg/net/http/#DetectContentType

,但是当我尝试使用它,我得到的错误undefined: DetectContentType

package main 

import (
    "fmt" 
    "io/ioutil" 
    "log" 
    "net/http" 
) 

func main() { 
    res, err := http.Get("http://www.google.com/robots.txt") 
    if err != nil { 
     log.Fatal(err) 
    } 

    robots, err := ioutil.ReadAll(res.Body) 
    res.Body.Close() 
    if err != nil { 
     log.Fatal(err) 
    } 

    fileType := DetectContentType(robots) 

     fmt.Println("FileType: ", fileType) 
} 

https://play.golang.org/p/WJDuU8Xx-5

我在做什么错?

回答

5

它是“网/ HTTP”包的一部分,因此,你必须写,

http.DetectContentType(robots) 

需要注意的是,如果你想以这种方式来使用此功能,你可以改变你的import语句这样:

import (
    ... 
    . "net/http" 
) 
+0

非常感谢Simba!我很蠢 :)。 – 2014-12-02 01:48:21

+0

你能解释一下导入改变是什么吗?为什么要在包装前放一个点? – 2016-07-12 18:16:38