您可以建立一个简单的侦听器,为其他进程提供请求。它可以接收和提供任何类型的内容。
使用net.Listen("tcp",":8080")很容易设置一个监听守护进程。也许您可以将此片段作为样板:
package main
import (
"fmt"
"io"
"log"
"net"
"strings"
)
type textProcessor struct {
input *string
}
func (this textProcessor) Write(b []byte) (int, error) {
*this.input = string(b)
return len(strings.TrimSpace(string(b))), nil
}
func main() {
t := textProcessor{new(string)}
l, err := net.Listen("tcp", ":8080")
if err != nil {
log.Fatal(err)
}
defer l.Close()
for {
// Wait for connection
conn, err := l.Accept()
if err != nil {
log.Fatal(err)
}
io.Copy(t, conn)
fmt.Print("Echo: ", *t.input)
conn.Close()
}
}
使用telnet localhost 8080检查它,然后输入一些垃圾。