github.com/zhouyu0/docker-note@v0.0.0-20190722021225-b8d3825084db/client/session.go (about)

     1  package client // import "github.com/docker/docker/client"
     2  
     3  import (
     4  	"context"
     5  	"net"
     6  	"net/http"
     7  )
     8  
     9  // DialSession returns a connection that can be used communication with daemon
    10  func (cli *Client) DialSession(ctx context.Context, proto string, meta map[string][]string) (net.Conn, error) {
    11  	req, err := http.NewRequest("POST", "/session", nil)
    12  	if err != nil {
    13  		return nil, err
    14  	}
    15  	req = cli.addHeaders(req, meta)
    16  
    17  	return cli.setupHijackConn(ctx, req, proto)
    18  }