این شاخه تحت توسعه است. برای رفتن به شاخه نسخه بعدی v12.2.0 یا اگر به دنبال یک انتشار پایدار هستید, به جای آن به شاخه v12.1.8 branch مراجعه کنید.
همین امروز برنامه رسمی Iris Command Line Interface را امتحان کنید.
با توجه به بالا بودن حجم کار، ممکن است در پاسخ به سوالات شما تاخیری وجود داشته باشد.
آیریس یک چارچوب وب پر سرعت ، ساده و در عین حال کاملاً برجسته و بسیار کارآمد برای Go است.
Simple Handler
package main
import "github.com/kataras/iris/v12"
type (
request struct {
Firstname string `json:"firstname"`
Lastname string `json:"lastname"`
}
response struct {
ID uint64 `json:"id"`
Message string `json:"message"`
}
)
func main() {
app := iris.New()
app.Handle("PUT", "/users/{id:uint64}", updateUser)
app.Listen(":8080")
}
func updateUser(ctx iris.Context) {
id, _ := ctx.Params().GetUint64("id")
var req request
if err := ctx.ReadJSON(&req); err != nil {
ctx.StopWithError(iris.StatusBadRequest, err)
return
}
resp := response{
ID: id,
Message: req.Firstname + " updated successfully",
}
ctx.JSON(resp)
}
!برای اطلاعات بیشتر ، مثال های مسیریابی را بخوانید
MVC
package main
import (
"github.com/kataras/iris/v12"
"github.com/kataras/iris/v12/mvc"
)
type (
request struct {
Firstname string `json:"firstname"`
Lastname string `json:"lastname"`
}
response struct {
ID uint64 `json:"id"`
Message string `json:"message"`
}
)
func main() {
app := iris.New()
mvc.Configure(app.Party("/users"), configureMVC)
app.Listen(":8080")
}
func configureMVC(app *mvc.Application) {
app.Handle(new(userController))
}
type userController struct {
// [...dependencies]
}
func (c *userController) PutBy(id uint64, req request) response {
return response{
ID: id,
Message: req.Firstname + " updated successfully",
}
}
اگر به دنبال مثالهای بیشتری هستید میتوانید در اینجا مطالعه کنید
دیگران درباره آیریس چه می گویند و برای پشتیبانی از پتانسیلهای این پروژه متن باز میتوانید از آن حمایت کنید
👑 حامیان
با کمک شما, ما میتوانیم توسعه وب متن باز را برای همه بهبود ببخشیم !
کمک هایی که تا حالا دریافت شده است !
$ mkdir myapp
$ cd myapp
$ go mod init myapp
$ go get github.com/kataras/iris/v12@latest # or @v12.2.11
$ cd myapp
$ go get github.com/kataras/iris/v12@latest
module myapp
go 1.20
require github.com/kataras/iris/v12 v12.2.0-beta4.0.20220920072528-ff81f370625a
برای اطلاعات بیشتر در مورد اسناد فنی می توانید به مستندات اصلی ما مراجعه کنید.
امروز می توانید از طریق کتاب الکترونیکی آیریس (نسخه جدید ، آینده v12.2.0 +) دسترسی PDF و دسترسی آنلاین داشته باشید و در توسعه آیریس شرکت کنید.
ما خیلی دوست داریم شما سهمی در توسعه چارچوب آیریس داشته باشید! برای دریافت اطلاعات بیشتر در مورد مشارکت در پروژه آیریس لطفاً پرونده CONTRIBUTING.md را مطالعه کنید.
اگر آسیبپذیری امنیتی در درون آیریس مشاهده کردید, لطفاً ایمیلی به iris-go@outlook.com بفرستید. کلیه ضعفهای امنیتی بلافاصله مورد توجه قرار خواهند گرفت.
این پروژه تحت پروانه BSD 3-clause license مجوز دارد ، دقیقاً مانند پروژه Go.
نام پروژه "آیریس" از اساطیر یونانی الهامگرفته شده است.