本文同步發表於: Sponge Records
本文會與開始編寫功能
我們將會先實作 main.go ,他會起到路由的功能,因此需要引用gorilla/mux,而多引用的 golang-api/application 與 golang-api/controllers 是之後放置主要邏輯與路由的程式碼
package main
import (
"os"
"fmt"
"net/http"
"github.com/gorilla/mux"
"golang-api/application"
"golang-api/controllers"
)
func main() {
router := mux.NewRouter()
router.HandleFunc("/api/user/create", controllers.CreateAccount).Methods("POST")
router.HandleFunc("/api/user/login", controllers.Authenticate).Methods("POST")
router.HandleFunc("/api/chat/listGet", controllers.GetContactsFor).Methods("POST")
router.HandleFunc("/api/chat/get", controllers.CreateContact).Methods("POST")
router.HandleFunc("/api/chat/create", controllers.GetContactsFor).Methods("POST")
router.Use(application.JwtAuthentication)
port := os.Getenv("PORT")
if port == "" {
port = "8000"
}
fmt.Println(port)
err := http.ListenAndServe(":" + port, router)
if err != nil {
fmt.Print(err)
}
}
透過以上程式碼可以連結日後要加入的功能,起到進入點的功能
下回將讓我們的 api 先能與資料庫溝通,畢竟我們大部分的功能都需要與資料庫互動