Go语言圣经-文本和HTML模板习题详解编程语言

Go语言圣经-文本和HTML模板

练习 4.14: 创建一个web服务器,查询一次GitHub,然后生成BUG报告、里程碑和对应的用户信息。

1.查看下文档godoc net/http |grep HandleFunc

func HandleFunc(pattern string, handler func(ResponseWriter, *Request))

2.godoc fmt|grep Fprintf

func Fprintf(w io.Writer, format string, a …interface{}) (n int, err error)

3. var issueList = template.Must(template.New(“issuelist”).Parse(“)

issueList.Execute(w, result)

 

package main 
 
import ( 
        "net/http" 
        //"fmt" 
        "github" 
        "html/template" 
) 
 
func main() { 
        //启动一个web服务器 
        http.HandleFunc("/", handle) 
        http.ListenAndServe("0.0.0.0:8000", nil) 
} 
 
func handle(w http.ResponseWriter, r *http.Request) { 
        var result *github.IssuesSearchResult 
        var keywords = []string{"php", "js"} 
        result, _ = github.SearchIssues(keywords) 
 
        var issueList = template.Must(template.New("issuelist").Parse(` 
<h1>{{.TotalCount}} issues</h1> 
<table> 
<tr style='text-align: left'> 
  <th>#</th> 
  <th>State</th> 
  <th>User</th> 
  <th>Title</th> 
</tr> 
{{range .Items}} 
<tr> 
  <td><a href='{{.HTMLURL}}'>{{.Number}}</a></td> 
  <td>{{.State}}</td> 
  <td><a href='{{.User.HTMLURL}}'>{{.User.Login}}</a></td> 
  <td><a href='{{.HTMLURL}}'>{{.Title}}</a></td> 
</tr> 
{{end}} 
</table> 
`)) 
        issueList.Execute(w, result) 
        //fmt.Fprintf(w,"hello world") 
} 

Go语言圣经-文本和HTML模板习题详解编程语言  

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/12545.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论