Gearbox هو إطار عمل على شبكة الإنترنت لبناء الخدمات الصغيرة المكتوبة في GO مع التركيز على الأداء العالي. إنه مبني على fasthttp الذي يصل إلى 10x أسرع من Net/HTTP
يتطلب مربع التروس الإصدار 1.14 أو أعلى من GO (تنزيل GO)
فقط استخدم Go Get لتنزيل وتثبيت علبة التروس
go get -u github.com/gogearbox/gearbox package main
import (
"github.com/gogearbox/gearbox"
)
func main () {
// Setup gearbox
gb := gearbox . New ()
// Define your handlers
gb . Get ( "/hello" , func ( ctx gearbox. Context ) {
ctx . SendString ( "Hello World!" )
})
// Start service
gb . Start ( ":3000" )
} package main
import (
"github.com/gogearbox/gearbox"
)
func main () {
// Setup gearbox
gb := gearbox . New ()
// Handler with parameter
gb . Get ( "/users/:user" , func ( ctx gearbox. Context ) {
ctx . SendString ( ctx . Param ( "user" ))
})
// Start service
gb . Start ( ":3000" )
} package main
import (
"log"
"github.com/gogearbox/gearbox"
)
func main () {
// Setup gearbox
gb := gearbox . New ()
// create a logger middleware
logMiddleware := func ( ctx gearbox. Context ) {
log . Printf ( "log message!" )
// Next is what allows the request to continue to the next
// middleware/handler
ctx . Next ()
}
// create an unauthorized middleware
unAuthorizedMiddleware := func ( ctx gearbox. Context ) {
ctx . Status ( gearbox . StatusUnauthorized )
. SendString ( "You are unauthorized to access this page!" )
}
// Register the log middleware for all requests
gb . Use ( logMiddleware )
// Define your handlers
gb . Get ( "/hello" , func ( ctx gearbox. Context ) {
ctx . SendString ( "Hello World!" )
})
// Register the routes to be used when grouping routes
routes := [] * gearbox. Route {
gb . Get ( "/id" , func ( ctx gearbox. Context ) {
ctx . SendString ( "User X" )
}),
gb . Delete ( "/id" , func ( ctx gearbox. Context ) {
ctx . SendString ( "Deleted" )
}),
}
// Group account routes
accountRoutes := gb . Group ( "/account" , routes )
// Group account routes to be under api
gb . Group ( "/api" , accountRoutes )
// Define a route with unAuthorizedMiddleware as the middleware
// you can define as many middlewares as you want and have
// the handler as the last argument
gb . Get ( "/protected" , unAuthorizedMiddleware , func ( ctx gearbox. Context ) {
ctx . SendString ( "You accessed a protected page" )
})
// Start service
gb . Start ( ":3000" )
} package main
import (
"github.com/gogearbox/gearbox"
)
func main () {
// Setup gearbox
gb := gearbox . New ()
// Serve files in assets directory for prefix static
// for example /static/gearbox.png, etc.
gb . Static ( "/static" , "./assets" )
// Start service
gb . Start ( ":3000" )
}لمزيد من النتائج ، تحقق من مستنداتنا
تحقق من مستنداتنا لمزيد من المعلومات حول علبة التروس وكيفية المساهمة
المنظمات التي تساعد في إدارة علبة التروس وترويجها ودعمها
| Trella: منصة تقنية B2B ونازح Marketplace الذي يربط الشاحنين مع شركات النقل |
يتم استخدام علبة التروس من قبل منظمات متعددة بما في ذلك على سبيل المثال لا الحصر
لا تتردد في الدردشة معنا على Discord ، أو مراسلتنا عبر البريد الإلكتروني على [email protected] إذا كانت لديك أسئلة أو اقتراحات
علبة التروس مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا
يتم إنشاء الشعار بواسطة Mahmoud Sayed وتوزيعه بموجب ترخيص Creative Commons