navigaid
6/28/2017 - 11:06 AM

robpike.io poo flinger clone in golang


package main

import (
        "log"
        "net"
        "time"
)

func main() {
        ln, err := net.Listen("tcp", "0.0.0.0:8000")
        if err != nil {
                log.Fatal(err)
        }
        for {
                conn, err := ln.Accept()
                if err != nil {
                        continue
                }
                go handle(conn)
        }
}

func handle(conn net.Conn) {
        log.Println("connection from", conn.RemoteAddr())
        conn.Write([]byte("HTTP/1.1 200 OK\r\n"))
        conn.Write([]byte("Content-Type: text/html; charset=utf-8\r\n"))
        conn.Write([]byte("Transfer-Encoding: chunked\r\n"))
        conn.Write([]byte("\r\n"))
        for {
                conn.Write([]byte("9"+"\r\n"))
                conn.Write([]byte("💩"+"\r\n"))
                time.Sleep(500 * time.Millisecond)
        }
}