Erstellen Sie eine RESTful-API in Golang und stellen Sie sie in Docker bereit: Erstellen Sie ein Golang-Projekt und definieren Sie die Datenstruktur. Schreiben Sie API-Handler, definieren Sie Routen und starten Sie HTTP-Server. Erstellen Sie eine Docker-Datei, erstellen Sie ein Docker-Image und führen Sie einen Docker-Container aus. Praktischer Fall: Testen der API mit Postman oder Curl.
So erstellen Sie eine RESTful-API in Golang und stellen sie auf Docker bereit.
go mod init my-api
type User struct { ID int `json:"id"` Name string `json:"name"` Email string `json:"email"` Age int `json:"age"` }
package main import ( "encoding/json" "fmt" "net/http" "github.com/gorilla/mux" ) func main() { // 创建一个新的路由器 r := mux.NewRouter() // 定义路由 r.HandleFunc("/users", getUsers).Methods("GET") r.HandleFunc("/users/{id}", getUser).Methods("GET") r.HandleFunc("/users", createUser).Methods("POST") r.HandleFunc("/users/{id}", updateUser).Methods("PUT") r.HandleFunc("/users/{id}", deleteUser).Methods("DELETE") // 启动 HTTP 服务器 fmt.Println("Listening on port 8080") http.ListenAndServe(":8080", r) } // 获取所有用户 func getUsers(w http.ResponseWriter, r *http.Request) { // ... } // 获取单个用户 func getUser(w http.ResponseWriter, r *http.Request) { // ... } // 创建用户 func createUser(w http.ResponseWriter, r *http.Request) { // ... } // 更新用户 func updateUser(w http.ResponseWriter, r *http.Request) { // ... } // 删除用户 func deleteUser(w http.ResponseWriter, r *http.Request) { // ... }
FROM golang:1.18-alpine WORKDIR /usr/src/app COPY . ./ RUN go build -o my-api CMD ["my-api"]
Das obige ist der detaillierte Inhalt vonWie erstellt man mit Golang eine RESTful-API und stellt sie in Docker bereit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!