Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk membina API RESTful dan melaksanakan CORS menggunakan Golang?

Bagaimana untuk membina API RESTful dan melaksanakan CORS menggunakan Golang?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-06-02 17:52:01
asal
598 orang telah melayarinya

Buat API RESTful dan laksanakan CORS: Buat projek dan pasang kebergantungan. Sediakan penghalaan HTTP untuk mengendalikan permintaan. Dayakan perkongsian sumber silang asal (CORS) menggunakan middlewareCORS middleware. Gunakan perisian tengah CORS pada penghala untuk membenarkan permintaan GET dan OPTIONS daripada mana-mana domain.

如何使用 Golang 构建 RESTful API 并实现 CORS?

Bina API RESTful dan laksanakan CORS menggunakan Golang

Dalam dunia web yang disambungkan hari ini, membina API RESTful adalah penting untuk bertukar data dengan aplikasi dan perkhidmatan lain. Tutorial ini akan membimbing anda tentang cara membina API RESTful menggunakan Golang dan mendayakan Perkongsian Sumber Silang Asal (CORS).

Prasyarat:

  • Pasang Golang v1.18 atau lebih tinggi
  • Familiar dengan konsep HTTP dan REST

Buat projek 🜜

1

Gunakan penghala HTTP ( seperti Gorilla Mux) menguruskan penghalaan permintaan.

mkdir my_rest_api && cd my_rest_api
go mod init my_rest_api
Salin selepas log masuk

Dalam kod di atas, fungsi pengendali helloWorld bertindak balas kepada permintaan GET dan mengembalikan mesej teks ringkas.

helloWorld 处理器函数响应 GET 请求并返回一个简单的文本消息。

3. 实现 CORS

接下来,启用 CORS 允许 API 从其他域访问。

package main

import (
    "fmt"
    "log"
    "net/http"

    "github.com/gorilla/mux"
)

func helloWorld(w http.ResponseWriter, r *http.Request) {
    fmt.Fprint(w, "Hello World!")
}

func main() {
    r := mux.NewRouter()
    r.HandleFunc("/", helloWorld).Methods(http.MethodGet)
    log.Fatal(http.ListenAndServe(":8080", r))
}
Salin selepas log masuk

middlewareCORS

3. Laksanakan CORS

Seterusnya, dayakan CORS untuk membolehkan API diakses dari domain lain.

func middlewareCORS(next http.Handler) http.Handler {
    return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
        w.Header().Set("Access-Control-Allow-Origin", "*")
        w.Header().Set("Access-Control-Allow-Methods", "GET, OPTIONS")
        if r.Method == "OPTIONS" {
            w.Header().Set("Access-Control-Allow-Headers", "Content-Type")
        }
        next.ServeHTTP(w, r)
    })
}
Salin selepas log masuk

Fungsi middlewareCORS ialah perisian tengah HTTP yang menetapkan pengepala CORS yang diperlukan untuk respons. Ia membenarkan permintaan GET dan OPTIONS daripada mana-mana domain (Access-Control-Allow-Origin: "*").

4. Gunakan perisian tengah

Gunakan perisian tengah CORS pada penghala.

r.Use(middlewareCORS)
Salin selepas log masuk

Kes praktikal: 🎜🎜🎜Dengan API RESTful ini, anda boleh menanyakan data atau mengendalikan permintaan daripada sumber lain. Sebagai contoh, anda boleh membina API CRUD mudah untuk mengurus data pengguna. 🎜🎜Dengan melaksanakan CORS, API anda boleh berinteraksi dengan aplikasi dan perkhidmatan lain daripada domain yang berbeza, yang sangat penting apabila membina sistem teragih moden. 🎜

Atas ialah kandungan terperinci Bagaimana untuk membina API RESTful dan melaksanakan CORS menggunakan Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Isu terkini
CORS dalam API Grafana
daripada 1970-01-01 08:00:00
0
0
0
Isu CORS NextJs
daripada 1970-01-01 08:00:00
0
0
0
javascript - Tanya tentang keselamatan CORS
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan