在 go 中,可以通过两种方法直接返回图片:使用 image/jpeg 包,将图片文件内容写入响应体;使用 http.servefile 函数,直接返回图片文件。
如何在 Go 中直接返回图片
在 Go 中,可以通过以下两种方法直接返回图片:
方法 1:使用 image/jpeg 包
package main import ( "image/jpeg" "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { // 打开图片文件 file, err := os.Open("image.jpg") if err != nil { log.Fatal(err) } defer file.Close() // 将文件内容写入响应体 _, err = jpeg.Encode(w, file, nil) if err != nil { log.Fatal(err) } }) log.Fatal(http.ListenAndServe(":8080", nil)) }
登录后复制
方法 2:使用 http.ServeFile 函数
package main import ( "log" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { // 直接返回图片文件 http.ServeFile(w, r, "image.jpg") }) log.Fatal(http.ListenAndServe(":8080", nil)) }
登录后复制
以上就是golang怎么直接返回图片的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:张大嘴,转转请注明出处:https://www.dingdanghao.com/article/530799.html