本文實(shí)例講述了go語言實(shí)現(xiàn)簡單http服務(wù)的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
復(fù)制代碼 代碼如下:
package main
import (
"flag"
"log"
"net/http"
"text/template"
)
var addr = flag.String("addr", ":1718", "http service address") // Q=17, R=18
var templ = template.Must(template.New("qr").Parse(templateStr))
func main() {
flag.Parse()
http.Handle("/", http.HandlerFunc(QR))
err := http.ListenAndServe(*addr, nil)
if err != nil {
log.Fatal("ListenAndServe:", err)
}
}
func QR(w http.ResponseWriter, req *http.Request) {
templ.Execute(w, req.FormValue("s"))
}
const templateStr = `
html>
head>
title>QR Link Generator/title>
/head>
body>
{{if .}}
img src="http://chart.apis.google.com/chart?chs=300x300cht=qrchoe=UTF-8chl={{urlquery .}}" />
br>
{{html .}}
br>
br>
{{end}}
form action="/" name=f method="GET">input maxLength=1024 size=70
name=s value="" title="Text to QR Encode">input type=submit
value="Show QR" name=qr>
/form>
/body>
/html>
希望本文所述對大家的Go語言程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Go語言服務(wù)器開發(fā)之簡易TCP客戶端與服務(wù)端實(shí)現(xiàn)方法
- go語言實(shí)現(xiàn)一個簡單的http客戶端抓取遠(yuǎn)程url的方法
- Go語言的http/2服務(wù)器功能及客戶端使用
- go語言實(shí)現(xiàn)一個最簡單的http文件服務(wù)器實(shí)例
- go語言實(shí)現(xiàn)http服務(wù)端與客戶端的例子