在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ GO/ 14.1 靜態(tài)文件支持
7 文本處理
3 Web基礎
14 擴展Web框架
10.4 小結
2.2 Go基礎
2.8 總結
6.1 session和cookie
5.5 使用beedb庫進行ORM開發(fā)
8.3 REST
13.6 小結
5.4 使用PostgreSQL數(shù)據(jù)庫
14.6 pprof支持
14.1 靜態(tài)文件支持
11.2 使用GDB調試
7.7 小結
1 GO環(huán)境配置
14.5 多語言支持
7.1 XML處理
1.5 總結
13 如何設計一個Web框架
14.3 表單及驗證支持
12 部署與維護
10 國際化和本地化
1.1 Go 安裝
6.2 Go如何使用session
5.6 NOSQL數(shù)據(jù)庫操作
6.5 小結
9.4 避免SQL注入
12.1 應用日志
4.2 驗證表單的輸入
10.1 設置默認地區(qū)
1.3 Go 命令
9.6 加密和解密數(shù)據(jù)
4.1 處理表單的輸入
4.4 防止多次遞交表單
11.3 Go怎么寫測試用例
8 Web服務
12.3 應用部署
5.7 小結
12.5 小結
11 錯誤處理,調試和測試
9.2 確保輸入過濾
14.2 Session支持
6.4 預防session劫持
12.4 備份和恢復
8.1 Socket編程
13.1 項目規(guī)劃
13.4 日志和配置設計
7.6 字符串處理
13.2 自定義路由器設計
6.3 session存儲
3.4 Go的http包詳解
8.2 WebSocket
10.3 國際化站點
7.5 文件操作
7.4 模板處理
9.1 預防CSRF攻擊
13.3 controller設計
2.6 interface
14.4 用戶認證
2.3 流程和函數(shù)
附錄A 參考資料
11.1 錯誤處理
9.5 存儲密碼
9.3 避免XSS攻擊
12.2 網站錯誤處理
6 session和數(shù)據(jù)存儲
2.4 struct類型
3.3 Go如何使得Web工作
2.5 面向對象
3.1 Web工作方式
1.2 GOPATH與工作空間
2.1 你好,Go
9.7 小結
13.5 實現(xiàn)博客的增刪改
7.2 JSON處理
10.2 本地化資源
7.3 正則處理
2 Go語言基礎
5.1 database/sql接口
4.5 處理文件上傳
8.5 小結
4.3 預防跨站腳本
5.3 使用SQLite數(shù)據(jù)庫
14.7 小結
3.2 Go搭建一個Web服務器
2.7 并發(fā)
5 訪問數(shù)據(jù)庫
4 表單
3.5 小結
1.4 Go開發(fā)工具
11.4 小結
9 安全與加密
5.2 使用MySQL數(shù)據(jù)庫
4.6 小結
8.4 RPC

14.1 靜態(tài)文件支持

我們在前面已經講過如何處理靜態(tài)文件,這小節(jié)我們詳細的介紹如何在beego里面設置和使用靜態(tài)文件。通過再介紹一個twitter開源的html、css框架bootstrap,無需大量的設計工作就能夠讓你快速地建立一個漂亮的站點。

beego靜態(tài)文件實現(xiàn)和設置

Go的net/http包中提供了靜態(tài)文件的服務,ServeFileFileServer等函數(shù)。beego的靜態(tài)文件處理就是基于這一層處理的,具體的實現(xiàn)如下所示:

//static file server
for prefix, staticDir := range StaticDir {
    if strings.HasPrefix(r.URL.Path, prefix) {
        file := staticDir + r.URL.Path[len(prefix):]
        http.ServeFile(w, r, file)
        w.started = true
        return
    }
}

StaticDir里面保存的是相應的url對應到靜態(tài)文件所在的目錄,因此在處理URL請求的時候只需要判斷對應的請求地址是否包含靜態(tài)處理開頭的url,如果包含的話就采用http.ServeFile提供服務。

舉例如下:

beego.StaticDir["/asset"] = "/static"

那么請求url如http://www.beego.me/asset/bootstrap.css就會請求/static/bootstrap.css來提供反饋給客戶端。

bootstrap集成

Bootstrap是Twitter推出的一個開源的用于前端開發(fā)的工具包。對于開發(fā)者來說,Bootstrap是快速開發(fā)Web應用程序的最佳前端工具包。它是一個CSS和HTML的集合,它使用了最新的HTML5標準,給你的Web開發(fā)提供了時尚的版式,表單,按鈕,表格,網格系統(tǒng)等等。

  • 組件   Bootstrap中包含了豐富的Web組件,根據(jù)這些組件,可以快速的搭建一個漂亮、功能完備的網站。其中包括以下組件:   下拉菜單、按鈕組、按鈕下拉菜單、導航、導航條、面包屑、分頁、排版、縮略圖、警告對話框、進度條、媒體對象等
  • Javascript插件   Bootstrap自帶了13個jQuery插件,這些插件為Bootstrap中的組件賦予了“生命”。其中包括:   模式對話框、標簽頁、滾動條、彈出框等。
  • 定制自己的框架代碼   可以對Bootstrap中所有的CSS變量進行修改,依據(jù)自己的需求裁剪代碼。

http://wiki.jikexueyuan.com/project/go-web-programming/images/14.1.bootstrap.png?raw=true" alt="" />

圖14.1 bootstrap站點

接下來我們利用bootstrap集成到beego框架里面來,快速的建立一個漂亮的站點。

  1. 首先把下載的bootstrap目錄放到我們的項目目錄,取名為static,如下截圖所示

    http://wiki.jikexueyuan.com/project/go-web-programming/images/14.1.bootstrap2.png?raw=true" alt="" />

    圖14.2 項目中靜態(tài)文件目錄結構

  2. 因為beego默認設置了StaticDir的值,所以如果你的靜態(tài)文件目錄是static的話就無須再增加了:

    StaticDir["/static"] = "static"

  3. 模板中使用如下的地址就可以了:

      //css文件
      <link href="/static/css/bootstrap.css" rel="stylesheet">
    
      //js文件
      <script src="/static/js/bootstrap-transition.js"></script>
    
      //圖片文件
      <img src="/static/img/logo.png">

上面可以實現(xiàn)把bootstrap集成到beego中來,如下展示的圖就是集成進來之后的展現(xiàn)效果圖:

http://wiki.jikexueyuan.com/project/go-web-programming/images/14.1.bootstrap3.png?raw=true" alt="" />

圖14.3 構建的基于bootstrap的站點界面

這些模板和格式bootstrap官方都有提供,這邊就不再重復貼代碼,大家可以上bootstrap官方網站學習如何編寫模板。

上一篇:2.8 總結下一篇:12 部署與維護