GolangNote

Golang笔记

plimble/ace golang web 框架入门

Permalink

plimble/ace 是个后起的Golang web 框架,大家还不熟知。但性能很好,Handler 表现方式也灵活。

plimble/ace

简单示例

Go: ace hello
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package main

import (
    "github.com/plimble/ace"
)

func main() {
    a := ace.Default()
    //a := ace.New()
    a.GET("/:name", func(c *ace.C) {
        name := c.Param("name")
        c.JSON(200, map[string]string{"hello": name})
    })
    a.Run(":8080")
}

路由形式

Go: 路由形式
1
2
3
4
5
6
7
a.DELETE("/", HandlerFunc)
a.HEAD("/", HandlerFunc)
a.OPTIONS("/", HandlerFunc)
a.PATCH("/", HandlerFunc)
a.PUT("/", HandlerFunc)
a.POST("/", HandlerFunc)
a.GET("/", HandlerFunc)

路由示例

Go: 路由示例
1
2
3
4
5
6
7
8
9
10
11
a := ace.New()

a.GET("/", func(c *ace.C){
    c.String(200, "Hello world")
})

a.POST("/form/:id/:name", func(c *ace.C){
    id := c.Param("id")
    name := c.Param("name")
    age := c.Request.PostFormValue("age")
})

不同形式的输出

JSON

Go: json
1
2
3
4
5
6
data := struct{
    Name string `json:"name"`
}{
    Name: "John Doe",
}
c.JSON(200, data)

String

Go: String
1
c.String(200, "Hello Ace")

Download

Go: stream
1
2
//application/octet-stream
c.Download(200, []byte("Hello Ace"))

HTML

Go: HTML
1
c.HTML("index.html")

Redirect

Go: Redirect
1
c.Redirect("/home")

ace 项目主页 https://github.com/plimble/ace

本文网址: https://golangnote.com/topic/18.html 转摘请注明来源

Related articles

Golang quicktemplate 模版快速入门

Golang 有很多的模版引擎,自带的 `html/template` 也很好,大多数情况都能满足需求,只是有些逻辑、条件判断不好在模版里实现, `quicktemplate` 是个很好的选择。...

Golang 时区时差处理方式

个人习惯用 0 时区时间戳记录时间,可以方便转到不同时区,下面介绍 Golang 时区时差处理...

Write a Comment to "plimble/ace golang web 框架入门"

Submit Comment Login
Based on Golang + fastHTTP + sdb | go1.17.1 Processed in 0ms