Wie erstellt man mit Golang eine RESTful-API und stellt sie in Docker bereit?

WBOY
Freigeben: 2024-06-01 16:38:02
Original
649 Leute haben es durchsucht

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.

如何使用 Golang 构建 RESTful API 并部署到 Docker?

So erstellen Sie eine RESTful-API in Golang und stellen sie auf Docker bereit.

Erstellen Sie eine RESTful-API. Erstellen Sie ein Golang-Projekt zu Docker

Docker-Datei erstellen

go mod init my-api
Nach dem Login kopieren

Docker-Image erstellen

type User struct {
    ID     int    `json:"id"`
    Name   string `json:"name"`
    Email  string `json:"email"`
    Age    int    `json:"age"`
}
Nach dem Login kopieren

Docker-Container ausführen

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) {
    // ...
}
Nach dem Login kopieren

Praktischer Fall:

Sie können diese API für Docker bereitstellen und Postman oder Curl zum Testen verwenden. Erstellen Sie beispielsweise einen Benutzer mit dem Namen „test“:

FROM golang:1.18-alpine

WORKDIR /usr/src/app

COPY . ./

RUN go build -o my-api

CMD ["my-api"]
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!