欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

go語言http請求發送json字符串

張吉惟2年前9瀏覽0評論

Go語言提供了快捷方便的方法進行HTTP請求發送,特別是對于JSON字符串的請求發送,更是簡單易懂。

在Go中,我們可以通過http包中的常用方法,實現向服務器發送JSON字符串的請求并且解析響應數據。

下面是一個基于HTTP POST方法向服務器發送JSON數據的例子:

package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
type Request struct {
Username string `json:"username"`
Password string `json:"password"`
}
type Response struct {
Status  int    `json:"status"`
Message string `json:"message"`
}
func main() {
url := "https://example.com/api/login"
reqBody := Request{"user123", "password123"}
jsonBody, _ := json.Marshal(reqBody)
req, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonBody))
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var resBody Response
err = json.NewDecoder(resp.Body).Decode(&resBody)
if err != nil {
panic(err)
}
fmt.Println("Status:", resBody.Status)
fmt.Println("Message:", resBody.Message)
}

首先我們定義了一個Request和Response結構體,用于存儲請求和響應的數據。然后我們創建一個HTTP客戶端并發送POST請求,將JSON數據作為請求體發送到服務器。請求頭部中設置Content-Type為application/json,表示請求體是JSON格式數據。

最后,我們定義一個變量resBody用來接收響應數據,并將響應數據JSON解碼到響應結構體中,通過打印輸出,我們可以方便的獲取到請求的響應數據。