我使用node.js并在一个小项目中表达.我设置响应标题像打击:
res.set({'Content-Type':'text/plain;charset=utf-8',
'Content-Length': Buffer.byteLength(data, 'utf-8')});
Run Code Online (Sandbox Code Playgroud)
我可以使用console.log打印数据的长度是317.
但是在浏览器的控制台上,我只是得到了这些:
连接:keep-alive
内容编码:gzip
内容类型:text/plain; charset = utf-
8日期:Sat,01 Jun 2013 08:21:59 GMT
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Powered-通过:快递
那么,为什么内容长度消失了?
Golang中有一些变量:
var a intfunc hello() { var a int }func hello() (a int) {}Golang有时会自动初始化一些变量,
但我不知道何时以及为何?它困惑了我.
例:
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
func foo(bts []byte) {
var a User
err := json.Unmarshal(bts, &a) // It's ok
}
func bar(bts []byte) (a *User) {
err := json.Unmarshal(bts, a) // It will crash
}
Run Code Online (Sandbox Code Playgroud)
我应该在使用之前初始化哪一个?