このようなURLの/view/以下を取得してhtmlを描画する簡単な関数があるとします。
Go
1 2func viewHandler(w http.ResponseWriter, r *http.Request) { 3 4 title := r.URL.Path[len("/view/"):] 5 fmt.Fprintf(w, "<h1>%s</h1><div>%s</div>", title, "hello!") 6 7} 8 9func main() { 10 http.HandleFunc("/view/", viewHandler) 11 log.Fatalln(http.ListenAndServe(":8080", nil)) 12} 13
Go
1(w http.ResponseWriter)
① まずここでの記述において、
wという変数はResponseWriterという型という意味で合っていますでしょうか。
② 以下が実際のhttp.ResponseWriterのインターフェースです。
抽象化がされていて、このメソッドを使えるよ〜って意味だと思いますが合っていますでしょうか。
Go
1 type ResponseWriter interface { 2 Header() Header 3 Write([]byte) (int, error) 4 WriteHeader(statusCode int) 5}
③ 以上を踏まえるとwに対して、以下のように書き込めば出力できるという意味が全く分かりません。。(wの正体はなんでしょうか。)
Go
1fmt.Fprintf(w, "<h1>%s</h1><div>%s</div>", title, "hello!") 2``
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。