1
This commit is contained in:
@@ -1 +1,77 @@
|
||||
package cms
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"net"
|
||||
"os"
|
||||
)
|
||||
|
||||
var (
|
||||
textChan chan string
|
||||
)
|
||||
|
||||
func TestTemp2() {
|
||||
server := "127.0.0.1:8000"
|
||||
tcpAddr, err := net.ResolveTCPAddr("tcp4", server)
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error())
|
||||
os.Exit(1)
|
||||
}
|
||||
conn, err := net.DialTCP("tcp", nil, tcpAddr)
|
||||
if err != nil {
|
||||
fmt.Println("Dial err:", err)
|
||||
return
|
||||
}
|
||||
textChan = make(chan string, 10)
|
||||
connHandler2(conn)
|
||||
}
|
||||
|
||||
func connHandler2(c net.Conn) {
|
||||
//接收终端输入
|
||||
//reader := bufio.NewReader(os.Stdin)
|
||||
//缓冲
|
||||
//buf := make([]byte, 1024)
|
||||
fmt.Println("Please input data...")
|
||||
go func() {
|
||||
for {
|
||||
//读取终端输入直到读取到\n
|
||||
//input, err := reader.ReadString('\n')
|
||||
//if err != nil {
|
||||
// fmt.Println("ReadString err:", err)
|
||||
// return
|
||||
//}
|
||||
s := <-textChan
|
||||
//写入数据
|
||||
n, err := c.Write([]byte(s))
|
||||
if err != nil {
|
||||
fmt.Println("Write err:", err, n)
|
||||
return
|
||||
}
|
||||
//服务器端返回的数据写入buf
|
||||
//cnt, err := c.Read(buf)
|
||||
//if err != nil {
|
||||
// fmt.Println("Read err:", err)
|
||||
// return
|
||||
//}
|
||||
//服务器端回传的信息
|
||||
//fmt.Println("server response:", string(buf[0:cnt]))
|
||||
}
|
||||
}()
|
||||
}
|
||||
|
||||
func connHandler(c net.Conn, printInfo *PrintInfo) (status int) {
|
||||
defer c.Close()
|
||||
//缓冲
|
||||
buf := make([]byte, 1024)
|
||||
data, _ := json.Marshal(printInfo)
|
||||
//写入数据
|
||||
c.Write(data)
|
||||
//服务器端返回的数据写入buf
|
||||
n, _ := c.Read(buf)
|
||||
status = utils.Str2Int(string(buf[:n]))
|
||||
//服务器端回传的信息
|
||||
fmt.Println("server response:", string(buf[:n]))
|
||||
return status
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user