go語言實(shí)現(xiàn)處理表單輸入
更新時(shí)間:2015年03月20日 10:44:28 投稿:hebedich
本文給大家分享的是一個(gè)使用go語言實(shí)現(xiàn)處理表單輸入的實(shí)例代碼,非常的簡單,僅僅是實(shí)現(xiàn)了用戶名密碼的驗(yàn)證,有需要的小伙伴可以自由擴(kuò)展下。
login.html
復(fù)制代碼 代碼如下:
<html>
<head><title></title></head>
<body>
<form action="http://localhost:9090/login" method="post">
用戶名:<input type="text" name="username">
密 碼:<input type="text" name="password">
<input type="submit" value="登錄">
</form>
</body>
</html>
main.go
復(fù)制代碼 代碼如下:
package main
import (
"fmt"
"html/template"
"log"
"net/http"
"strings"
)
func sayHelloName(w http.ResponseWriter, r *http.Request) {
// 解析url傳遞的參數(shù)
r.ParseForm()
//在服務(wù)端打印信息
fmt.Println(r.Form)
fmt.Println("path", r.URL.Path)
fmt.Println("Scheme", r.URL.Scheme)
fmt.Println(r.Form["url_long"])
for k, v := range r.Form {
fmt.Println("key:", k)
// join() 方法用于把數(shù)組中的所有元素放入一個(gè)字符串。
// 元素是通過指定的分隔符進(jìn)行分隔的
fmt.Println("val:", strings.Join(v, ""))
}
// 輸出到客戶端
fmt.Fprintf(w, "hello astaxie!")
}
func login(w http.ResponseWriter, r *http.Request) {
fmt.Println("method:", r.Method)
if r.Method == "GET" {
t, _ := template.ParseFiles("login.html")
// 執(zhí)行解析模板
// func (t *Template) Execute(wr io.Writer, data interface{}) error {
t.Execute(w, nil)
} else {
r.ParseForm()
fmt.Println("username:", r.Form["username"])
fmt.Println("password:", r.Form["password"])
}
}
func main() {
//設(shè)置訪問路由
http.HandleFunc("/", sayHelloName)
http.HandleFunc("/login", login)
//設(shè)置監(jiān)聽端口
err := http.ListenAndServe(":9090", nil)
if err != nil {
log.Fatal("ListenAndserve:", err)
}
}
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
Go語言開發(fā)環(huán)境搭建與初探(Windows平臺(tái)下)
Go是Google開發(fā)的一種編譯型,並發(fā)型,并具有垃圾回收功能的編程語言,可能很多人想學(xué)習(xí)go語言,那么首先就要了解go語言的環(huán)境配置方法2014-10-10
Go項(xiàng)目與Docker結(jié)合實(shí)現(xiàn)高效部署深入探究
在現(xiàn)代軟件開發(fā)中,使用Docker部署應(yīng)用程序已經(jīng)成為一種標(biāo)準(zhǔn)實(shí)踐,本文將深入探討如何將Go項(xiàng)目與Docker結(jié)合,實(shí)現(xiàn)高效、可靠的部署過程,通過詳細(xì)的步驟和豐富的示例,你將能夠迅速掌握這一流程2023-12-12
Go語言使用templ實(shí)現(xiàn)編寫HTML用戶界面
templ是一個(gè)在 Go 中編寫 HTML 用戶界面的語言,使用 templ,我們可以創(chuàng)建可呈現(xiàn) HTML 片段的組件,下面就跟隨小編一起了解一下具體的實(shí)現(xiàn)方法吧2023-12-12

