我想要组织进出x-www-form-urlencoding,类似于你如何使用json或xml.有没有一个现有的包来做这个,还是有没有文件如何实现一个自己,如果没有存在?
gorilla/schema是受欢迎和良好的维护:
原文链接:/go/186999.html例如
func FormHandler(w http.RequestWriter,r *http.Request) { err := r.ParseForm() if err != nil { // handle error } person := new(Person) // Person being a struct type decoder := schema.NewDecoder() err = decoder.Decode(person,r.Form) if err != nil { // handle error } }
goforms也是一种选择.
更新2015年5月23日
> gorilla / schema仍然是我最受欢迎的map-to-struct包之一,POST表单值是常见的用例.
> goji/param也是相当实实在在,具有许多相同的功能.
> mholt/binding在(IMO)的一个稍微更复杂的API的费用更多的功能.
我已经使用大猩猩/模式了几年了,没有任何重大的问题.我使用它与vala结合验证输入(不是零,太短,太长等)之前,他们击中DB.