Bắt đầu Với Gin-Gonic Framework - Lập Trình
- Lập trình
- Cơ sở dữ liệu
- Tin tức
- Chủ đề khác
Điều kiện cần
- Biết cài đặt môi trường phát triển và lập trình căn bản với Golang
- Biết cách tải các module khác của Golang về máy
- Biết cách tạo các module, package trong Golang
- Biết cách xây dựng RESTful APIs, các quy tắc căn bản để tạo RESTful APIs
Giới thiệu Gin-Gonic Framework
Một trong những web framework đầu tiên dành cho Go là Martini nhưng dự án đó không còn được tiếp tục nữa. Tuy vậy, các framework ngày nay vẫn luôn lấy cảm hứng từ những tính năng của Martini, vốn vô cùng mạnh mẽ và tiện lợi.
Gin hay còn gọi là Gin-Gonic là một trong những dự án như vậy. Nó sử dụng một phiên bản tùy biến của gói httprouter vì tốc độ xử lí cực kì nhanh, điều này làm cho nó vô cùng hoàn hảo để phát triển API hiệu xuất cao. Song song đó, nó cung cấp các trình xử lý cho nhiều trường hợp sử dụng phổ biến: middleware, file uploading, logging, binding front-end HTML component với cấu trúc dữ liệu back-end, …
Gin-Gonic là web framework của Golang được dùng nhiều nhất

Cài đặt Gin Framework
Để cài đặt package Gin có thể sử dụng lệnh sau:
go get github.com/gin-gonic/ginKhởi tạo dự án
- Tạo thư mục chứa dự án mkdir gin-api cd gin-api
- Tạo module của dự án go mod init gin-api
- Tạo file main.go touch main.go
Viết mã lệnh cho dự án
main.go
package main import ( "github.com/gin-gonic/gin" ) func main() { router := gin.Default() api := router.Group("/api") { api.GET("/test", func(ctx *gin.Context) { ctx.JSON(200, gin.H{ "message": "test successful", }) }) } router.Run(":8080") }Biên dịch và chạy thử dự án
- Để chạy thử dự án bạn thực hiện lệnh sau: go run main.go
- Để biên dịch và chạy dự án bạn thực hiện những lệnh sau: go build ./gin-api
Kiểm thử kết quả trả về của API
- Kiểm thử kết quả bằng lệnh curl như sau: curl localhost:8080/api/test
- Kiểm thử kết quả bằng Postman:

Mã nguồn tham khảo: https://github.com/sinhdev/go-lang-demo/tree/main/gin-api
Tài liệu tham khảo
https://godoc.org/github.com/gin-gonic/ginhttps://github.com/gin-gonichttps://medium.com/@dinhhuy_67517/gin-framework-là-gì-49cfe86f29adhttps://medium.com/wesionary-team/getting-started-with-go-gin-framework-6943f8f5f882https://medium.com/@dablu/our-first-microservice-in-golang-using-gin-gonic-as-framework-4db155e46fc6https://dev.to/codehakase/building-a-web-app-with-go-gin-and-react-5ke
Từ khóa » Golang Context Là Gì
-
Golang Context Cancel Và Cách Sử Dụng - Viblo
-
Sử Dụng Context Trong Golang - Viblo
-
Context Package Trong Go 1.7 - Kipalog
-
Package Context Trong Go - Đỗ Đăng Quân | Programming
-
Golang - Sử Dụng Context - YouTube
-
Context Là Gì Cùng Tìm Hiểu Golang Context Là Gì - Bình Dương
-
Golang Context Deadline Và Timeout Là Gì. - AI Design
-
1.6 Mô Hình Thực Thi đồng Thời · GitBook
-
Golang Context Deadline Và Timeout Là Gì | YouBlo
-
Bối Cảnh ở Golang | Đánh Dấu Mã Ai
-
Context - Go Packages
-
Android Context Là Gì? - Hoclaptrinh
-
How To Use Contexts In Go - DigitalOcean
-
Ứng Dụng Clean Architecture Cho Service Golang REST API