1. 程式人生 > >golang 獲取api 數據

golang 獲取api 數據

golang api

直接上代碼


type ApiRequest interface{}


//參數 e 一個空接口,f http請求連接, p 請求方式 參數為 “POST” 或 “GET”

func FromApiGetData(e *ApiRequest, f *PostUrl, p string) (string, error) {

jsons, errs := json.Marshal(e)

if errs != nil {

fmt.Println(errs.Error())

}

fmt.Println(string(jsons))

req, err := http.NewRequest(p, f.Url, bytes.NewBuffer([]byte(string(jsons))))

req.Header.Set("Content-Type", "application/json")

client := &http.Client{}

resp, err := client.Do(req)

if err != nil {

panic(err)

}

defer resp.Body.Close()

//status := resp.Status

//headers := resp.Header

body, _ := ioutil.ReadAll(resp.Body)

bodys := string(body)

return bodys, nil

}


註:空接口 在main 中定義 例如

type PostConLogin struct {

Email string `json:"email"`

Password string `json:"password"`

}

m := PostConLogin{Email: "[email protected]", Password: "123456"}; var v ApiRequest = m


golang 獲取api 數據