中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

golang的網絡編程http

發布時間:2020-06-26 00:31:26 來源:網絡 閱讀:406 作者:ck_god 欄目:編程語言

服務器

// code_054_http_service_02 project main.go
package main

import (
    "fmt"
    "net/http"
)

//服務端編寫的業務邏輯處理程序
//hander函數: 具有func(w http.ResponseWriter, r *http.Requests)簽名的函數
func myHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Println(r.RemoteAddr, "連接成功")  //r.RemoteAddr遠程網絡地址
    fmt.Println("method = ", r.Method) //請求方法
    fmt.Println("url = ", r.URL.Path)
    fmt.Println("header = ", r.Header)
    fmt.Println("body = ", r.Body)
    w.Write([]byte("hello go")) //給客戶端恢復的數據
}

func main() {
    http.HandleFunc("/go", myHandler)
    //該方法用于在指定的 TCP 網絡地址 addr 進行監聽,然后調用服務端處理程序來處理傳入的連接請求。
    //該方法有兩個參數:第一個參數 addr 即監聽地址;第二個參數表示服務端處理程序,通常為空
    //第二個參數為空意味著服務端調用 http.DefaultServeMux 進行處理
    http.ListenAndServe("127.0.0.1:8006", nil)
}

客戶端

// code_054_http_client_02 project main.go
package main

import (
    "fmt"
    "io"
    "log"
    "net/http"
)

func main() {

    //get方式請求一個資源
    //resp, err := http.Get("http://www.baidu.com")
    //resp, err := http.Get("http://www.neihan8.com/article/index.html")
    resp, err := http.Get("http://127.0.0.1:8000/go")
    if err != nil {
        log.Println(err)
        return
    }

    defer resp.Body.Close() //關閉

    fmt.Println("header = ", resp.Header)
    fmt.Printf("resp status %s\nstatusCode %d\n", resp.Status, resp.StatusCode)
    fmt.Printf("body type = %T\n", resp.Body)

    buf := make([]byte, 2048) //切片緩沖區
    var tmp string

    for {
        n, err := resp.Body.Read(buf) //讀取body包內容
        if err != nil && err != io.EOF {
            fmt.Println(err)
            return
        }

        if n == 0 {
            fmt.Println("讀取內容結束")
            break
        }
        tmp += string(buf[:n]) //累加讀取的內容
    }

    fmt.Println("buf = ", string(tmp))
}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

漾濞| 西畴县| 都匀市| 尉氏县| 庆安县| 泰和县| 介休市| 甘谷县| 乐昌市| 曲阳县| 新野县| 搜索| 商南县| 阿拉善左旗| 瓦房店市| 屏南县| 裕民县| 莱州市| 霸州市| 刚察县| 东台市| 岳池县| 健康| 临安市| 武义县| 常德市| 佳木斯市| 兴山县| 乐山市| 耿马| 孙吴县| 广丰县| 土默特右旗| 永胜县| 阜阳市| 平阳县| 阳城县| 泰兴市| 永川市| 海城市| 南京市|