golang學習筆記6 beego專案路由設定

2022-04-02 01:08:02 字數 1937 閱讀 9057

golang學習筆記5 beego專案路由設定

前面我們已經建立了 beego 專案,而且我們也看到它已經執行起來了,那麼是如何執行起來的呢?讓我們從入口檔案先分析起來吧:

我們看到 main 函式是入口函式,但是我們知道 go 的執行過程是如下圖所示的方式:

這裡我們就看到了我們引入了乙個包_ "quickstart/routers",這個包只引入執行了裡面的 init 函式,那麼讓我們看看這個裡面做了什麼事情:

}路由包裡面我們看到執行了路由註冊beego.router, 這個函式的功能是對映 url 到 controller,第乙個引數是 url (使用者請求的位址),這裡我們註冊的是/,也就是我們訪問的不帶任何引數的 url,第二個引數是對應的 controller,也就是我們即將把請求分發到那個控制器來執行相應的邏輯,我們可以執行類似的方式註冊如下路由:

beego.router("/user",&controllers.usercontroller{})

這樣使用者就可以通過訪問/user去執行usercontroller的邏輯。這就是我們所謂的路由,更多更複雜的路由規則請查詢 beego 的路由設定

再回來看看 main 函式裡面的beego.runbeego.run執行之後,我們看到的效果好像只是監聽服務埠這個過程,但是它內部做了很多事情:

一旦 run 起來之後,我們的服務就監聽在兩個埠了,乙個服務埠 8080 作為對外服務,另乙個 8088 埠實行對內監控。

通過這個**的分析我們了解了 beego 執行起來的過程,以及內部的一些機制。接下來讓我們去剝離 controller 如何來處理邏輯的。

qq群:golang beego技術***(316397059)

Golang學習筆記

如果乙個method的receiver是 t,你可以在乙個t型別的例項變數v上面呼叫這個method,而不需要 v去呼叫這個method 即不需要 v method 如果乙個method的receiver是t,你可以在乙個 t型別的變數p上呼叫這個method,而不需要 p去呼叫這個method。i...

golang學習筆記

與c語法不同之處 1.引數列表中各個引數型別相同時可以只寫出最後乙個,如 add x,y int int 2.型別在引數名 變數 函式 後面 3.函式的左大括號要跟函式名同一行,否則編譯不過 4.函式定義要先寫關鍵字func在函式開頭 函式外的每個語句都要以func var等等關鍵字開頭 5.在包或...

Golang學習筆記

package main import fmt func main break default func inte ce select case defer gomap struct chan else goto package switch const fallthrough ifrange ty...