File tree 5 files changed +20
-19
lines changed
5 files changed +20
-19
lines changed Original file line number Diff line number Diff line change @@ -140,7 +140,7 @@ MVC设计模式是目前Web应用开发中最常见的架构模式,通过分
140
140
this.TplNames = "index.tpl"
141
141
}
142
142
143
- 上面的方式我们实现了子类MainController,实现了Get方法,那么如果用户通过其他的方式(POST/HEAD等)来访问该资源都将返回403,而如果是Get来访问,因为我们设置了AutoRender=true,那么在执行玩Get方法之后会自动执行Render函数 ,就会显示如下界面:
143
+ 上面的方式我们实现了子类MainController,实现了Get方法,那么如果用户通过其他的方式(POST/HEAD等)来访问该资源都将返回403,而如果是Get来访问,因为我们设置了AutoRender=true,那么在执行完Get方法之后会自动执行Render函数 ,就会显示如下界面:
144
144
145
145
![ ] ( images/13.4.beego.png?raw=true )
146
146
Original file line number Diff line number Diff line change 4
4
## 博客目录
5
5
博客目录如下所示:
6
6
7
- /main.go
8
- /views:
9
- /view.tpl
10
- /new.tpl
11
- /layout.tpl
12
- /index.tpl
13
- /edit.tpl
14
- /models/model.go
15
- /controllers:
16
- /index.go
17
- /view.go
18
- /new.go
19
- /delete.go
20
- /edit.go
21
-
7
+ .
8
+ ├── controllers
9
+ │ ├── delete.go
10
+ │ ├── edit.go
11
+ │ ├── index.go
12
+ │ ├── new.go
13
+ │ └── view.go
14
+ ├── main.go
15
+ ├── models
16
+ │ └── model.go
17
+ └── views
18
+ ├── edit.tpl
19
+ ├── index.tpl
20
+ ├── layout.tpl
21
+ ├── new.tpl
22
+ └── view.tpl
22
23
23
24
## 博客路由
24
25
博客主要的路由规则如下所示:
Original file line number Diff line number Diff line change 1
1
# 14 扩展Web框架
2
- 第十三章介绍了如何开发一个Web框架,通过介绍MVC、路由、日志处理、配置处理完成了一个基本的框架系统,但是一个好的框架需要一些方便的辅助工具来快速的开发Web,那么我们这一章将就如何提供一些快速开发Web的工具进行介绍,第一小节介绍如何处理静态文件,如何利用现有的twitter开源的bootstrap进行快速的开发美观的站点,第二小节介绍如何利用前面介绍的session来进行用户登录处理,第三小节介绍如何方便的输出表单、这些表单如何进行数据验证,如何快速的结合model进行数据的增删改操作,第四小节介绍如何进行一些用户认证,包括http basic认证、http digest认证,第五小节介绍如何利用前面介绍的i18n支持多语言的应用开发。
2
+ 第十三章介绍了如何开发一个Web框架,通过介绍MVC、路由、日志处理、配置处理完成了一个基本的框架系统,但是一个好的框架需要一些方便的辅助工具来快速的开发Web,那么我们这一章将就如何提供一些快速开发Web的工具进行介绍,第一小节介绍如何处理静态文件,如何利用现有的twitter开源的bootstrap进行快速的开发美观的站点,第二小节介绍如何利用前面介绍的session来进行用户登录处理,第三小节介绍如何方便的输出表单、这些表单如何进行数据验证,如何快速的结合model进行数据的增删改操作,第四小节介绍如何进行一些用户认证,包括http basic认证、http digest认证,第五小节介绍如何利用前面介绍的i18n支持多语言的应用开发。第六小节介绍了如何集成Go的pprof包用于性能调试。
3
3
4
4
通过本章的扩展,beego框架将具有快速开发Web的特性,最后我们将讲解如何利用这些扩展的特性扩展开发第十三章开发的博客系统,通过开发一个完整、美观的博客系统让读者了解beego开发带给你的快速。
5
5
Original file line number Diff line number Diff line change @@ -146,7 +146,7 @@ oauth和oauth2是目前比较流行的两种认证方式,还好第三方有一
146
146
图14.6 授权登录之后显示的获取到的github信息页
147
147
148
148
## 自定义认证
149
- 自定义的认证一般都是和session结合的验证的 ,如下代码来源于一个基于beego的开源博客:
149
+ 自定义的认证一般都是和session结合验证的 ,如下代码来源于一个基于beego的开源博客:
150
150
151
151
152
152
//登陆处理
Original file line number Diff line number Diff line change @@ -8,7 +8,7 @@ Go语言有一个非常棒的设计就是标准库里面带有代码的性能监
8
8
其实net/http/pprof中只是使用runtime/pprof包来进行封装了一下,并在http端口上暴露出来
9
9
10
10
## beego支持pprof
11
- 目前beego框架新增了pprof,该特性默认是不开启的,如果你需要测试性能,查看相应的执行goroutine之类的信息,其实Go的默认包"net/http/pprof"已经具有该功能,如果按照Go默认的方式执行Web,默认就可以使用,但是由于beego重新封装了ServHTTP函数,所以如果你默认的包含是无法开启该功能的 ,所以需要对beego的内部改造支持pprof。
11
+ 目前beego框架新增了pprof,该特性默认是不开启的,如果你需要测试性能,查看相应的执行goroutine之类的信息,其实Go的默认包"net/http/pprof"已经具有该功能,如果按照Go默认的方式执行Web,默认就可以使用,但是由于beego重新封装了ServHTTP函数,默认的包是无法开启该功能的 ,所以需要对beego的内部改造支持pprof。
12
12
13
13
- 首先在beego.Run函数中根据变量是否自动加载性能包
14
14
You can’t perform that action at this time.
0 commit comments