2

在准嵌入式环境中,速度就是一切。我发现如果我压缩我的 .html 文件,应用程序会更快。马提尼酒中是否有旗帜或方式可以即时执行此操作?

4

2 回答 2

5

这个答案只是为了表明@fabrizioM 的答案确实有效:

第一步:创建服务器

package main

import (
        "github.com/codegangsta/martini"
        "github.com/codegangsta/martini-contrib/gzip"
)

func main() {
        m := martini.Classic()
        // gzip every request
        m.Use(gzip.All())
        m.Get("/hello", func() string {
                return "Hello, World!"
        })
        m.Run()
}

第二步:运行服务器

go run main.go

第 3 步:尝试服务器

这是您必须记住包含Accept-Encoding: gzip标题(或等效项)的步骤。

无压缩:

curl --dump-header http://localhost:3000/hello
HTTP/1.1 200 OK
Date: Wed, 09 Jul 2014 17:19:35 GMT
Content-Length: 13
Content-Type: text/plain; charset=utf-8

Hello, World!

压缩:

curl --dump-header http://localhost:3000/hello -H 'Accept-Encoding: gzip'
HTTP/1.1 200 OK
Content-Encoding: gzip
Content-Type: text/plain; charset=utf-8
Vary: Accept-Encoding
Date: Wed, 09 Jul 2014 17:21:02 GMT
Content-Length: 37

�       n��Q��J
于 2014-07-09T17:21:37.927 回答
5

您可以使用gzip中间件

https://github.com/codegangsta/martini-contrib/tree/master/gzip

import (
  "github.com/codegangsta/martini"
  "github.com/codegangsta/martini-contrib/gzip"
)

func main() {
  m := martini.Classic()
  // gzip every request
  m.Use(gzip.All())
  m.Run()
}
于 2014-06-06T18:22:02.500 回答