Rumah >pembangunan bahagian belakang >Golang >golang http set pengekodan

golang http set pengekodan

王林
王林asal
2023-05-13 09:22:061053semak imbas

Bahasa pengaturcaraan Golang ialah bahasa pengaturcaraan dengan pembangunan pantas dan prestasi cemerlang Ia juga merupakan bahasa pengaturcaraan yang cekap dan berkuasa yang dilancarkan oleh Google dalam beberapa tahun kebelakangan ini. Ia mempunyai ciri-ciri sintaks yang mudah, penyusunan pantas, kecekapan berjalan yang tinggi dan boleh mencapai konkurensi Pengaturcaraan dan membangunkan aplikasi rangkaian juga sangat mudah. Di Golang, pembangunan HTTP adalah sangat biasa.

Pakej http digunakan di Golang untuk komunikasi rangkaian dan pembangunan bahagian pelayan. Menggunakan pakej http boleh melaksanakan fungsi permintaan dan respons http dengan mudah Pada masa yang sama, pakej htt Golang juga menyokong penetapan kaedah pengekodan permintaan dan respons http, yang boleh menyelesaikan masalah pengekodan bahasa Cina.

Tetapkan kaedah pengekodan permintaan HTTP

Dalam permintaan HTTP, bahagian utama permintaan ialah data yang diwakili oleh jenis media yang ditentukan oleh medan pengepala "Jenis Kandungan". Contohnya: application/json, application/xml, dsb. Pada masa yang sama, kaedah pengekodan permintaan boleh ditentukan dengan menetapkan parameter "charset" dalam medan pengepala "Content-Type".

Pelaksanaan khusus adalah seperti berikut:

package main

import (
    "io/ioutil"
    "net/http"
    "bytes"
)

func main() {
    url := "http://www.example.com/api"
    params := []byte(`{"username":"user","password":"pass"}`)

    req, err := http.NewRequest("POST", url, bytes.NewBuffer(params))
    if err != nil {
        // handle error
    }

    req.Header.Set("Content-Type", "application/json; charset=utf-8")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        // handle error
    }
    defer resp.Body.Close()

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        // handle error
    }

    // handle response
}

Dalam kod di atas, parameter permintaan diformatkan sebagai JSON dan "charset" medan pengepala "Content-Type" ditetapkan kepada " utf-8".

Tetapkan kaedah pengekodan respons HTTP

Untuk kaedah pengekodan respons HTTP, anda juga boleh menetapkan parameter "charset" dalam medan pengepala "Content-Type" untuk menentukan kaedah pengekodan , seperti berikut:

package main

import (
    "net/http"
)

func main() {
    content := "你好,世界"

    w := http.ResponseWriter
    w.Header().Set("Content-Type", "text/html;charset=utf-8")
    w.Write([]byte(content))
}

Dalam kod di atas, gunakan "http.ResponseWriter" untuk menjana respons http. Tetapkan "charset" medan pengepala "Content-Type" kepada "utf-8" dan keluarkan rentetan dalam format pengekodan UTF-8.

Ringkasan

Pembangunan HTTP Golang boleh menyelesaikan masalah pengekodan bahasa Cina dengan mudah Anda hanya perlu menetapkan parameter "charset" bagi medan pengepala "Content-Type". Kaedah pengekodan permintaan dan respons Http perlu konsisten supaya tiada masalah bercelaru bahasa Cina.

Atas ialah kandungan terperinci golang http set pengekodan. 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