package dbapi import ( "fmt" "os" "nanomsg.org/go-mangos" "nanomsg.org/go-mangos/protocol/req" "nanomsg.org/go-mangos/transport/ipc" "nanomsg.org/go-mangos/transport/tcp" ) type ReqrepApi struct { } const ( ReqRep_URL = "tcp://127.0.0.1:8002" ) func (api ReqrepApi)SendRequest(reqStr string) string { var sock mangos.Socket var err error var msg []byte if sock, err = req.NewSocket(); err !=nil { fmt.Println("can't get new req socket!") os.Exit(1) } sock.AddTransport(ipc.NewTransport()) sock.AddTransport(tcp.NewTransport()) if err = sock.Dial(ReqRep_URL);err !=nil { fmt.Println("can't dial on req socket!!") os.Exit(1) } if err =sock.Send([]byte(reqStr));err !=nil { fmt.Println("can't send msg") } if msg,err = sock.Recv();err !=nil { fmt.Println("can't get msg from mangos reqrep server") } defer sock.Close() return string(msg) }