go语言中通过http访问需要认证的api

  

func main() {
        //生成client 参数为默认
        client := &http.Client{}

        //生成要访问的url
        url := "https://api.XXXXX.com/v2/users/XXXX/behavior?$user_

        //提交请求
        reqest, err := http.NewRequest("GET", url, nil)
        reqest.SetBasicAuth("13XXXX493","congmXXXXXXXXX493")//设置需要认证的username和password
        if err != nil {
                panic(err)
        }

        //处理返回结果
        response, _ := client.Do(reqest)

        defer response.Body.Close()
        body, err := ioutil.ReadAll(response.Body)
        fmt.Printf("%s\n",body)
}

  当用post请//生成client 参数为默认

     //生成client 参数为默认
        client := &http.Client{}

        //生成要访问的url
        url := "https://u.XXXXX.com/open/v2/evXXXXXrv/upload_event"

        str :=`json格式的参数`
        //提交请求 strings.NewReader(str) 返回io.reader
        reqest, err := http.NewRequest("POST", url, strings.NewReader(str))
        reqest.Header.Add("Authorization","Basic Y2U1ZGI5OTRmMzc1NGU4NDllZTkwMTA2Yjc0ZmQyZGE6ZWZiNjBjMTk0YWNjNDM1NWE5ZjFhZTBlNmNlNmM1Yzg=")
        
        if err != nil {
                panic(err)
        }

        //处理返回结果
        response, _ := client.Do(reqest)

        defer response.Body.Close()
        body, err := ioutil.ReadAll(response.Body)
        fmt.Printf("%s\n",body)