HTTP header names in Go

huangapple go评论71阅读模式
英文:

HTTP header names in Go

问题

我需要收集一系列的HTTP头信息。目前我找到的唯一方法是使用http.Request.Header.Get("%header name%")。是否有关于%header name%的命名约定?例如,在PHP中,所有键都是大写的,单词之间用下划线分隔。

英文:

I need to collect a bunch of http headers. The only way I found yet is *http.Request .Header.Get("%header name%")
Is there any name conventions for %header name% ? <br>E.g. in PHP all keys are uppercased, words separated with underscore.

答案1

得分: 6

头部的键以规范格式表示。

Header方法会为您规范化键。

如果应用程序直接访问头部映射,则应用程序负责确保键处于规范格式。

一些以规范格式表示的头部名称示例包括:

Content-Length
Etag

您可以使用range来查找所有的头部:

for name, values := range req.Header {
     fmt.Printf("%s: %v\n", name, values)
}
英文:

The keys in a header are in canonical format.

The Header methods canonicalize the the key for you.

If the application accesses the header map directly, then the application is responsible for ensuring that the key is in canonical format.

Some examples of header names in canonical format are:

Content-Length
Etag

You can find all headers using range:

for name, values := range req.Header {
     fmt.Printf(&quot;%s: %v\n&quot;, name, values)
}

huangapple
  • 本文由 发表于 2015年1月10日 03:18:33
  • 转载请务必保留本文链接:https://go.coder-hub.com/27867648.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定