Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara mencetak header dalam golang

Cara mencetak header dalam golang

PHPz
PHPzasal
2023-05-10 17:36:37872semak imbas

Dalam bahasa Go, pengepala pencetakan boleh dilaksanakan menggunakan jenis Pengepala dan fungsi http.Header() dalam pakej net/http. Berikut akan memperkenalkan operasi khusus tentang cara golang mencetak pengepala.

Pertama, kita perlu mengimport pakej net/http. Pakej ini ialah perpustakaan standard dalam golang, termasuk pelaksanaan klien dan pelayan HTTP.

import (
    "net/http"
    "fmt"
)

Seterusnya, kami boleh mencipta objek permintaan http dan menghantar permintaan ke URL tertentu:

resp, err := http.Get("http://www.example.com")
if err != nil {
    // 请求发生错误
}

Di sini kami menghantar permintaan GET ke URL yang ditentukan melalui fungsi http.Get() alamat dan simpan respons dalam objek resp. Seterusnya, kita boleh mendapatkan maklumat Pengepala melalui objek resp:

header := resp.Header
fmt.Println(header)

resp.Header ialah objek jenis Pengepala, yang mengandungi pasangan nilai kunci dalam pengepala respons HTTP. Dengan memanggil fungsi fmt.Println(), kita boleh mencetak kandungan dalam pengepala respons.

Selain menggunakan resp.Header, kami juga boleh mencipta objek Header baharu melalui fungsi http.Header() dan menambah pasangan nilai kunci padanya:

header := http.Header{}
header.Add("Content-Type", "application/json")
header.Add("Authorization", "Bearer xxxxxxxx")
fmt.Println(header)

Di sini kami mencipta Objek Pengepala baharu dan gunakan fungsi Tambah() untuk menambah dua pasangan nilai kunci "Jenis Kandungan" dan "Kebenaran". Seterusnya, kita juga boleh menggunakan fungsi fmt.Println() untuk mencetak objek Pengepala baharu.

Dalam pembangunan sebenar, kami juga boleh menggunakan perpustakaan pihak ketiga yang lain untuk memproses pengepala. Contohnya, gunakan github.com/golobby/httpheader untuk menjana dan menghuraikan pengepala. Pustaka menyediakan fungsi yang kaya untuk menambah, memadam, mendapatkan dan menetapkan pengepala. Berikut ialah contoh kod pustaka:

import (
    "github.com/golobby/httpheader"
    "fmt"
)

header := httpheader.New(map[string][]string{
    "Content-Type": {"application/json"},
    "Authorization": {"Bearer xxxxxxxx"},
})
fmt.Println(header.Headers())

Di sini kami mencipta objek Header baharu dengan memanggil fungsi httpheader.New() dan menambah dua kekunci "Content-Type" dan "Authorization" pada nilainya. sepasang. Memanggil fungsi Headers() boleh menukar objek Header ke dalam jenis http.Header supaya permintaan HTTP boleh dihantar menggunakan pakej net/http.

Ringkasan:

Pencetakan pengepala ialah operasi yang sangat mudah dalam golang. Kita boleh menggunakan resp.Header untuk mendapatkan maklumat pengepala respons dan memanggil fungsi fmt.Println() untuk mencetaknya; kita juga boleh menggunakan fungsi http.Header() untuk mencipta objek Header baharu dan menggunakan fungsi Add(). untuk menambah pasangan nilai kunci. Jika anda memerlukan pemprosesan pengepala yang lebih kaya, anda juga boleh menggunakan perpustakaan pihak ketiga seperti github.com/golobby/httpheader.

Atas ialah kandungan terperinci Cara mencetak header dalam golang. 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