Rumah >pembangunan bahagian belakang >Golang >Penjelasan terperinci dan aplikasi praktikal permintaan POST dalam bahasa Go

Penjelasan terperinci dan aplikasi praktikal permintaan POST dalam bahasa Go

王林
王林asal
2024-04-07 17:21:021158semak imbas

Dalam bahasa Go, permintaan POST boleh dilaksanakan melalui jenis NewRequest dan Klien bagi pakej net/http. Sintaksnya adalah seperti berikut: Cipta permintaan: func postRequest(url, contentType string, body []bait) Tetapkan pengepala permintaan: req.Header.Set("Content-Type", contentType) Hantar permintaan: resp, err := client. Do(req )Baca badan respons: body, err := ioutil.ReadAll(resp.Body)

Go 语言 POST 请求详解与实战应用

Go bahasa POST permintaan penjelasan terperinci dan aplikasi praktikal

Pengenalan

permintaan POST adalah sejenis permintaan HTTP Digunakan untuk menghantar data ke pelayan. Dalam bahasa Go, permintaan POST boleh dilaksanakan melalui jenis NewRequest dan Client bagi pakej net/http. net/http 包的 NewRequestClient 类型来实现。

语法

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

func postRequest(url, contentType string, body []byte) ([]byte, error) {
    req, err := http.NewRequest("POST", url, bytes.NewBuffer(body))
    if err != nil {
        return nil, err
    }
    req.Header.Set("Content-Type", contentType)

    client := &http.Client{}

    resp, err := client.Do(req)
    if err != nil {
        return nil, err
    }
    defer resp.Body.Close()

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

    return body, nil
}

实战案例

创建一个简单的 Go 语言程序来发送 POST 请求并从服务器获取响应:

package main

import (
    "fmt"
    "net/http"
    "os"
)

func main() {
    url := "http://example.com"
    contentType := "application/json"
    body := []byte(`{"name": "John Smith", "age": 30}`)

    resp, err := postRequest(url, contentType, body)
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }

    fmt.Println(string(resp))
}

在这个示例中,我们向一个名为 example.com

Syntaxrrreee

    Kes praktikal
  • Buat program bahasa Go yang mudah untuk menghantar permintaan POST dan dapatkan respons daripada pelayan:
  • rrreee
Dalam contoh ini, kami menghantar permintaan kod ke fail >example.com pelayan menghantar permintaan POST dan kandungan permintaan itu ialah objek JSON. Pelayan boleh mengendalikan permintaan POST ini dan mengembalikan respons. 🎜🎜🎜Bacaan lanjutan🎜🎜🎜🎜[Go language net/pakej http](https://golang.org/pkg/net/http/)🎜🎜[Permintaan HTTP POST](https://developer.mozilla.org /zh-CN/docs/Web/HTTP/Kaedah/POST)🎜🎜

Atas ialah kandungan terperinci Penjelasan terperinci dan aplikasi praktikal permintaan POST dalam bahasa Go. 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