Skip to content

Instantly share code, notes, and snippets.

@vishaltelangre
Created May 24, 2014 19:03
Show Gist options
  • Select an option

  • Save vishaltelangre/ec00fb9c081f1c7259f8 to your computer and use it in GitHub Desktop.

Select an option

Save vishaltelangre/ec00fb9c081f1c7259f8 to your computer and use it in GitHub Desktop.
implementing #ServeHTTP method of #Handler #interface #go #Go
package main
import (
"fmt"
"net/http"
)
type String string
type Struct struct {
Greeting string
Punct string
Who string
}
func (s String) ServeHTTP(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, string(s))
}
func (s Struct) ServeHTTP(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "%s%s %s", s.Greeting, s.Punct, s.Who)
}
func main() {
http.Handle("/string", String("I'm a knot, understand?"))
http.Handle("/struct", &Struct{"Hello", ",", "Gophers!"})
http.ListenAndServe("localhost:4001", nil)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment