- Go语言拥有一系列成熟的标准库,如
net/http
和html/template
,这些标准库可以用于构建Web应用。
- 尽管使用Web框架可以更容易并且更快捷地构建Web应用,但是在使用这些框架之前,先了解Web编程所需的基础知识也是非常重要的。
- Go语言的
net/http
标准库可以将HTTP通信放到SSL之上进行,也就是通过HTTPS方式创建出更为安全的通信连接。
- Go语言的处理器可以是任何带有
ServeHTTP
方法的结构,其中ServeHTTP
方法需要接收两个参数:第一个参数是一个ResponseWriter
接口,而第二个参数则是一个指向Request
结构的指针。
- 处理器函数是与处理器拥有相似行为的函数。处理器函数用于处理请求,它们跟
ServeHTTP
方法拥有相同的签名。
- 通过串联处理器或者处理器函数,可以对程序中的横切关注点进行分隔,并以模块化的方式处理请求。
- 多路复用器也是处理器。比如,
ServeMux
就是一个HTTP请求多路复用器,它接受HTTP请求并根据请求中的URL将请求重定向到正确的处理器。DefaultServeMux
是ServeMux
的一个公开的实例,这个实例会被用作默认的多路复用器。
- 在Go 1.6或以上的版本中,
net/http
标准库默认支持HTTP/2。版本低于1.6的Go语言如果想要获得HTTP/2支持,就需要手动添加http2包。