Skip to content

Instantly share code, notes, and snippets.

@gadelkareem
Created October 15, 2021 16:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gadelkareem/71790f8fc332c5056c43b6dda7eb5fc7 to your computer and use it in GitHub Desktop.
Save gadelkareem/71790f8fc332c5056c43b6dda7eb5fc7 to your computer and use it in GitHub Desktop.
Fake server in golang
package main
import (
"bufio"
"fmt"
"log"
"net"
)
func handleConnection(conn net.Conn) {
defer conn.Close()
scanner := bufio.NewScanner(conn)
for scanner.Scan() {
message := scanner.Text()
fmt.Println("################################Message:", message)
// newMessage := strings.ToUpper(message)
// conn.Write([]byte(newMessage + "\n"))
}
if err := scanner.Err(); err != nil {
fmt.Println("error:", err)
}
}
func main() {
port:= "8080"
ln, err := net.Listen("tcp", "0.0.0.0:"+port)
if err != nil {
log.Fatal(err)
}
fmt.Println("Accept connection on port " +port)
for {
conn, err := ln.Accept()
if err != nil {
log.Fatal(err)
}
fmt.Println("Calling handleConnection", conn.RemoteAddr())
go handleConnection(conn)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment