Go Web Lightweight Framework Gin Learning Series: установка и использование

Go

Оригинальный автор, публичный аккаунт [программист чтение], прошу обратить внимание на паблик-аккаунт, просьба указывать источник перепечатываемой статьи.

Хотя стандартная библиотека Gonet/httpОн обеспечивает очень мощную поддержку разработки веб-приложений с помощью Go, но для команд, которые хотят быстро разрабатывать и запускать проекты, лучше использовать веб-фреймворк.

В сообществе Go есть много отличных веб-фреймворков, таких какGin,Iris,Echo,Martini,Revelи разработан китайцамиBeegoРамка.

Преимущества Джина

  • быстро: на основеRadixПроизводительность маршрутизации по дереву очень высока.
  • Поддержка промежуточного программного обеспечения: существует множество встроенных промежуточного программного обеспечения, таких какLogger,Gzip,AuthorizationЖдать.
  • Восстановление после сбоя: сбой программы, вызванный паникой, может быть обнаружен, чтобы веб-служба всегда могла работать.
  • Проверка JSON: можно проверить запросJSONФормат данных.
  • Группировка маршрутизации: поддерживает группировку маршрутизации (RouteGroup), что упрощает организацию маршрутов.
  • Механизм управления ошибками: может собирать ошибки в программе
  • Несколько методов рендеринга данных: поддержкаHTML,JSON,YAML,XMLи другие ответы формата данных.
  • Расширяемость: промежуточное ПО очень легко расширяется.
  • Средство проверки данных: средство проверки данных поддерживается и может быть настроено.

установка и использование

Последняя версия ДжинаV1.3.0, процесс установки очень простой, но перед установкой Gin необходимо установитьGo1.6или выше (для последующих версий может потребоватьсяGo1.8или выше), ниже описаны два метода установки.

прямая установка

$  go get -u github.com/gin-gonic/gin //使用-u安装最新版本

Установить с Говендором

Совет: Govendor — это инструмент управления зависимостями для разработки проектов Go с использованием языка Go.

  1. Установить Говендор
$ go get github.com/kardianos/govendor
  1. Установить Джин
$ govendor init
$ govendor fetch github.com/gin-gonic/gin@v1.3

Простой пример

После установки Gin двумя указанными выше способами давайте рассмотрим простой пример, чтобы увидеть, как использовать Gin для разработки веб-приложений.

import "github.com/gin-gonic/gin"
func main(){
    r := gin.Default()
    r.GET("/test",func(c *gin.Context){
        c.JSON(200,gin.H{"hello":"world"})
    })
    r.Run()
}

Как видите, использование gin для разработки веб-сервиса — очень простое дело, которое можно просто разложить на четыре шага:

1. Импортируйте пакет джина

Когда мы установили инфраструктуру Gin, пакет gin был установлен локально, если вы используетеgo getустановлена ​​команда, путь к пакету$GOPATH/src/github.com/gin-gonic/gin, и нам нужно использовать толькоimportКоманды могут быть введены в пакет.

import "github.com/gin-gonic/gin"
2. Создайте маршрут

Использование метода gin.Default() вернет экземпляр gin.Engine, который представляет механизм маршрутизации по умолчанию.

r := gin.Default()

Созданный таким образом gin.Engine по умолчанию будет использовать ПО промежуточного слоя Logger и Recovery.Можно использовать метод gin.New() для создания маршрута по умолчанию, который не содержит ПО промежуточного слоя.

r := gin.New()
3. Определите метод для обработки HTTP

С маршрутом по умолчанию мы можем создавать методы для обработки HTTP-запросов, используя метод GET в примере:

r.GET("/test",func(c *gin.Context){
    c.JSON(200,gin.H{"hello":"world"})
})

Gin поддерживает все распространенные методы HTTP-запросов:GET,POST,PUT,PATCH,OPTIONS,HEAD,DELETE, который используется так же, как в приведенном выше примере, например POST:

r.POST("/test",func(c *gin.Context){
    c.JSON(200,gin.H{"hello":"world"})
})

Каждый метод обрабатывает только соответствующий HTTP-запрос, а метод Any может обрабатывать любой HTTP-запрос.

r.Any("/test",func(c *gin.Context){
    c.JSON(200,gin.H{"hello":"world"})
})
4. Порт прослушивания

После определения запроса используйте метод Run() для прослушивания порта и начала приема HTTP-запросов.Если метод Run() не передает параметры, порт прослушивания по умолчанию — 8080.

r.Run() //r.Run(":3000")

резюме

Gin — это облегченный фреймворк для веб-разработки на Go.Он также очень прост в использовании и легок в использовании.Однако, прежде чем использовать Gin для разработки, вам все равно необходимо понять net/http, изначально поддерживаемый Go.

Ваше внимание — самое большое поощрение на моем писательском пути!