您可以建立一個簡單的偵聽器,爲其他進程提供請求。它可以接收和提供任何類型的內容。
使用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()
}
}
檢查出來有遠程登錄本地主機8080事後輸入一些垃圾。
有無數的方法來做到這一點。存儲狀態文件。使用數據庫。要求用戶設置一個配置文件。將該值存儲在已知的遠程位置(如S3)中。將其存儲到附加的EPROM中。刻錄成CD。輸出到打卡。從字面上看,還有無數其他的可能性。 – Flimzy
@Flimzy所有這些方法都是外在的。我想通過本地代碼設置和獲取值。 –
您可以通過本機Go代碼完成所有這些操作。你只需要一個用於打卡器的Go驅動程序,並且* voala!* – Flimzy