亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Go語(yǔ)言入門(mén)Go?Web?Fiber框架快速了解

 更新時(shí)間:2022年05月20日 15:10:16   作者:宇宙之一粟  
這篇文章主要為大家介紹了Go語(yǔ)言入門(mén)Go?Web?Fiber框架的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Go Fiber 教程展示了如何使用 Fiber 框架在 Golang 中創(chuàng)建簡(jiǎn)單的 Web 應(yīng)用程序。

Fiber 是一個(gè)簡(jiǎn)單快速的 Go Web 框架。 Fiber 專(zhuān)注于極致性能和低內(nèi)存占用。它的靈感來(lái)自流行的 Express JS 框架。

Fiber 創(chuàng)建一個(gè) HelloWorld

package main
import (
    "log"
    "github.com/gofiber/fiber/v2"
)
func main() {
    app := fiber.New()
    app.Get("/", func (c *fiber.Ctx) error {
        return c.SendString("Hello, World!")
    })
    log.Fatal(app.Listen(":3000"))
}

Fiber 路由

路由將 HTTP 動(dòng)詞(例如 GET、POST、PUT、DELETE)和 URL 路徑關(guān)聯(lián)到處理函數(shù)。要?jiǎng)?chuàng)建路由,我們使用 Fiber 應(yīng)用程序?qū)ο蟮暮瘮?shù)。

app.Get("/", func(c *fiber.Ctx) error {
    ...
})

這里我們將 GET 請(qǐng)求中發(fā)送的 / 路徑映射到處理函數(shù)。該函數(shù)接收一個(gè)上下文對(duì)象作為參數(shù)。它保存 HTTP 請(qǐng)求和響應(yīng)。

Go Fiber 狀態(tài)碼

HTTP 響應(yīng)狀態(tài)代碼指示特定 HTTP 請(qǐng)求是否已成功完成。

回答分為五類(lèi):

  • 信息響應(yīng) (100–199)
  • 成功響應(yīng) (200–299)
  • 重定向 (300–399)
  • 客戶(hù)端錯(cuò)誤 (400–499)
  • 服務(wù)器錯(cuò)誤 (500–599)
package main
import (
    "log"
    "github.com/gofiber/fiber/v2"
)
func main() {
    app := fiber.New()
    app.Get("/", func(c *fiber.Ctx) error {
        return c.SendStatus(fiber.StatusOK)
    })
    log.Fatal(app.Listen(":3000"))
}

SendStatus 函數(shù)設(shè)置 HTTP 狀態(tài)代碼。

app := fiber.New()

New 函數(shù)創(chuàng)建一個(gè)新的 Fiber 命名實(shí)例。

app.Get("/", func(c *fiber.Ctx) error {
    return c.SendStatus(fiber.StatusOK)
})

Get 函數(shù)為 HTTP GET 方法注冊(cè)一個(gè)路由。我們將 / 路徑映射到匿名函數(shù);該函數(shù)返回 Fiber.StatusOK 代碼。

Go Fiber 發(fā)送短信

使用 SendString 函數(shù)發(fā)送文本消息。

package main
import (
    "log"
    "github.com/gofiber/fiber/v2"
)
func main() {
    app := fiber.New()
    app.Get("/text", func(c *fiber.Ctx) error {
        return c.SendString("Hello there!!")
    })
    log.Fatal(app.Listen(":3000"))
}

當(dāng)我們?cè)L問(wèn) localhost:3000/text URL 時(shí),我們會(huì)收到一條簡(jiǎn)單的文本消息。

$ curl localhost:3000/text
Hello there!!

Go Fiber headers

請(qǐng)求對(duì)象還包括從客戶(hù)端發(fā)送的請(qǐng)求標(biāo)頭。請(qǐng)求標(biāo)頭是 HTTP 標(biāo)頭,其中包含有關(guān)要獲取的資源以及請(qǐng)求資源的客戶(hù)端的更多信息。

同樣,響應(yīng)標(biāo)頭包括來(lái)自服務(wù)器的元信息。

package main
import (
    "log"
    "github.com/gofiber/fiber/v2"
)
func main() {
    app := fiber.New()
    app.Get("/", func(c *fiber.Ctx) error {
        return c.SendString("Main page")
    })
    app.Get("/user-agent", func(c *fiber.Ctx) error {
        ua := c.Get("User-Agent")
        return c.SendString(ua)
    })
    log.Fatal(app.Listen(":3000"))
}

Get 函數(shù)返回字段指定的 HTTP 請(qǐng)求標(biāo)頭。在我們的例子中,我們返回用戶(hù)代理名稱(chēng)。

$ curl localhost:3000/user-agent
curl/7.74.0

Go Fiber 發(fā)送文件

SendFile 函數(shù)在給定路徑傳輸文件。圖像顯示在瀏覽器中。下載功能傳輸圖像;該圖像由瀏覽器作為附件提供。

package main
import (
    "log"
    "github.com/gofiber/fiber/v2"
)
func main() {
    app := fiber.New()
    app.Get("/sid", func(c *fiber.Ctx) error {
        return c.Download("./data/sid.png")
    })
    app.Get("/sid2", func(c *fiber.Ctx) error {
        return c.SendFile("./data/sid.png")
    })
    log.Fatal(app.Listen(":3000"))
}

在示例中,我們有用于顯示和下載圖像的 URL 路徑。圖像存儲(chǔ)在數(shù)據(jù)目錄中。

以上就是Go語(yǔ)言入門(mén)Go Web Fiber框架快速了解的詳細(xì)內(nèi)容,更多關(guān)于Go Web Fiber框架的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論