Merge branch 'master' of github.com:gopl-zh/gopl-zh.github.com

This commit is contained in:
Xargin
2018-07-02 17:08:03 +08:00
96 changed files with 267 additions and 262 deletions

View File

@@ -1,6 +1,6 @@
## 7.7. http.Handler接口
在第一章中我们粗略的了解了怎么用net/http包去实现网络客户端(§1.5)和服务器(§1.7)。在这个小节中我们会对那些基于http.Handler接口的服务器API做更进一步的学习
在第一章中我们粗略的了解了怎么用net/http包去实现网络客户端§1.5和服务器§1.7。在这个小节中我们会对那些基于http.Handler接口的服务器API做更进一步的学习
<u><i>net/http</i></u>
```go
@@ -44,7 +44,7 @@ $ go build gopl.io/ch7/http1
$ ./http1 &
```
然后用1.5节中的获取程序如果你更喜欢可以使用web浏览器来连接服务器,我们得到下面的输出:
然后用1.5节中的获取程序如果你更喜欢可以使用web浏览器来连接服务器我们得到下面的输出:
```
$ go build gopl.io/ch1/fetch
@@ -144,7 +144,7 @@ func (db database) price(w http.ResponseWriter, req *http.Request) {
}
```
让我们关注这两个注册到handlers上的调用。第一个db.list是一个方法值 (§6.4),它是下面这个类型的值。
让我们关注这两个注册到handlers上的调用。第一个db.list是一个方法值§6.4,它是下面这个类型的值。
```go
func(w http.ResponseWriter, req *http.Request)
@@ -195,4 +195,4 @@ func main() {
**练习 7.11** 增加额外的handler让客户端可以创建读取更新和删除数据库记录。例如一个形如 `/update?item=socks&price=6` 的请求会更新库存清单里一个货品的价格并且当这个货品不存在或价格无效时返回一个错误值。(注意:这个修改会引入变量同时更新的问题)
**练习 7.12** 修改/list的handler让它把输出打印成一个HTML的表格而不是文本。html/template包(§4.6)可能会对你有帮助。
**练习 7.12** 修改/list的handler让它把输出打印成一个HTML的表格而不是文本。html/template包§4.6可能会对你有帮助。