如何在Go或Beego中发送https请求

if it is just HTTP request to be sent in go then I will use

out, err := json.Marshal(ios_push)
    if err != nil {
        panic(err)
    }
    req, err := http.NewRequest("POST", l_url, bytes.NewBuffer(out))
    req.Header.Set("X-Custom-Header", "myvalue")
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    fmt.Println("request message is", req)
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

import will be

import "net/http"

when I have to send https request from go to a server which accepts data in encoded using a private key. Now how to send an https request by encoding the request data using a private key in go