博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
golang 读取模板,接受参数
阅读量:6077 次
发布时间:2019-06-20

本文共 1083 字,大约阅读时间需要 3 分钟。

hot3.png

addUser.html

<h1>Hello</h1>
<form action='user' method='post'>
    <input type=text name=Id /></br>
    <input type=text name=name /></br>
    <input type=submit />
</form>
<a href="users">Show All</a>
---
package main
import (
    //"database/sql"
    //_ "github.com/mattn/go-sqlite3"
    "fmt"
    "html/template"
    "log"
    "net/http"
    "strconv"
)
type User struct {
    ID   int
    Name string
}
func (user User) String() string {
    format := `ID : %d Name: %s`
    return fmt.Sprintf(format, user.ID, user.Name)
}
func saveUser(w http.ResponseWriter, req *http.Request) {
    userId, _ := strconv.Atoi(req.FormValue("Id"))
    name := req.FormValue("name")
    out := strconv.Itoa(userId) + "-" + name
    u := &User{ID: userId, Name: name}
    log.Println(out)
    fmt.Fprintf(w, u.String())
}
func addUser(w http.ResponseWriter, r *http.Request) {
    t, _ := template.ParseFiles("tmpl/addUser.html")
    t.Execute(w, nil)
}
func main() {
    http.HandleFunc("/", addUser)
    http.HandleFunc("/user", saveUser)
    err := http.ListenAndServe(":8880", nil)
    if err != nil {
        log.Fatal("ListenAndServe: ", err.Error())
    }
}

转载于:https://my.oschina.net/u/1173868/blog/489708

你可能感兴趣的文章
Sqlserver建立Oracle的鏈接服務器
查看>>
根据IP获取所在的国家城市
查看>>
python Selenium+phantomjs 小技巧
查看>>
linux每日命令(1):ls命令
查看>>
ArrayBlockingQueue源码解析(2)
查看>>
哈希表
查看>>
成为跨平台的C++程序员 - C++ - language - ITeye论坛
查看>>
让CKEDITOR支持JSP上传
查看>>
SQL FOR XML子句的各种用法
查看>>
HDU 2795 Billboard
查看>>
[原创]ExtAspNet秘密花园(十三) — 布局之行布局和列布局
查看>>
了解JavaScript中的内置对象
查看>>
struts2 获取request、session的方法
查看>>
使用Gitorious搭建私有代码仓库
查看>>
Git工程迁移方法总结(命令行) .(转载)
查看>>
多媒体开发之rtp 打包发流---同网段其他机子sdp 播放不了
查看>>
Android WebView 获取网页的标题
查看>>
PetaPoco利用ODP.NET Managed Driver连接Oracle
查看>>
基础研究,应用研究,开发研究的定义特点及区别
查看>>
Redis常用命令入门4:集合类型
查看>>