Rumah  >  Artikel  >  pembangunan bahagian belakang  >  golang mendapat alamat permintaan

golang mendapat alamat permintaan

WBOY
WBOYasal
2023-05-14 19:36:361161semak imbas

Apabila menulis aplikasi web menggunakan Golang, kadangkala anda perlu mendapatkan alamat permintaan (URL) yang dimasukkan oleh pengguna dalam penyemak imbas. Proses ini sangat mudah, hanya gunakan pakej net/http terbina dalam Go untuk menyelesaikannya.

Pertama, kita perlu mencipta pengendali HTTP. Boleh dilanjutkan berdasarkan pengendali HTTP sedia ada atau ditulis dari awal. Berikut ialah contoh pengendali HTTP mudah yang hanya mengembalikan mesej "Hello, World!":

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello, World!")
    })
    http.ListenAndServe(":8080", nil)
}

Fungsi http.HandleFunc dalam kod melaksanakan penghala yang memetakan permintaan kepada fungsi pengendali dan http.ListenAndServe fungsi memulakan pelayan HTTP pada port 8080.

Seterusnya, kita perlu mendapatkan URL permintaan daripada objek permintaan http.Request. Dalam fungsi pengendali, ia boleh diperolehi melalui r.URL. Ambil perhatian bahawa URL ialah struktur dan kita perlu menggunakan kaedah String()nya untuk menukarnya kepada bentuk rentetan. Berikut ialah kod untuk mendapatkan URL permintaan:

http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Your request URL path is: %s", r.URL.String())
})

Kod di atas mencetak bahagian laluan URL permintaan (iaitu bahagian selepas "/") kepada respons HTTP.

Jika kita perlu mendapatkan URL permintaan lengkap (termasuk rentetan pertanyaan, dll.), maka kita boleh menggunakan kaedah r.URL.RequestURI():

http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Your request URL is: %s", r.URL.RequestURI())
})

Kod di atas akan mencetak URL permintaan lengkap ke bahagian tengah respons HTTP.

Selain mendapatkan URL permintaan, objek http.Request juga menyediakan banyak maklumat lain, seperti kaedah permintaan, pengepala permintaan, badan permintaan, dll. Melalui mereka, kami boleh menulis pengendali HTTP yang lebih fleksibel dan kaya dengan ciri.

Ringkasan:

Mendapatkan alamat permintaan di Golang adalah sangat mudah, hanya gunakan kaedah http.Request atau URL dalam objek RequestURI. Sebagai pembangun, kita harus biasa dengan maklumat HTTP asas ini untuk mengawal aplikasi web kita dengan lebih terperinci.

Atas ialah kandungan terperinci golang mendapat alamat permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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
Artikel sebelumnya:Perbezaan antara golang dan cArtikel seterusnya:Perbezaan antara golang dan c