You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30KB

خبرها

این شاخه تحت توسعه است. برای رفتن به شاخه نسخه بعدی v12.2.0 یا اگر به دنبال یک انتشار پایدار هستید, به جای آن به شاخه v12.1.8 branch مراجعه کنید.

همین امروز برنامه رسمی Iris Command Line Interface را امتحان کنید.

با توجه به بالا بودن حجم کار، ممکن است در پاسخ به سوالات شما تاخیری وجود داشته باشد.

چارچوب وب آیریس

build status FOSSA Status view examples chat

آیریس یک چارچوب وب پر سرعت ، ساده و در عین حال کاملاً برجسته و بسیار کارآمد برای 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)
}

!برای اطلاعات بیشتر ، مثال های مسیریابی را بخوانید

Handler with custom input and output arguments

اگر برایتان جالب بود مثال های دیگری را مطالعه کنید

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",
  }
}

اگر به دنبال مثال‌های بیشتری هستید می‌توانید در اینجا مطالعه کنید

دیگران درباره آیریس چه می گویند و برای پشتیبانی از پتانسیل‌های این پروژه متن باز می‌توانید از آن حمایت کنید

👑 حامیان

با کمک شما, ما می‌توانیم توسعه وب متن باز را برای همه بهبود ببخشیم !

کمک هایی که تا حالا دریافت شده است !

Paul Xu David Shaw Stone Travel Tan Andre Dias Rafael Francischini Heyuan Li Rainer Gevers Matic Zarnec Navid Dezashibi Sky Lee Richard Bondi Anthonius Prinslo Vladimir George Fourikis Александр Лебединский Li Yang Qianyu Zhou anilpdv CAO HOAI BAO Oscar Hernandez Gerard Lancea neulhan xushiquan Matt Ľuboš Pinteš Leighton McKeen Weliam simranjit singh Kenneth Jordan Morlé Koudeka Rui Carlos Augusto Horst Ender Pavithran MULYAWAN SENTOSA KIT UNITED Ricardo Hernandez Lopez ChinChuanKuo Nikhar Saxena Servio Zambrano Nate Anderson Claude Muller Marco Moeser Sanketh P B Vu Hoang Lam Dimitar Trifonov Midhubalan Balasubramanian AANAND NATARAJAN Edsongley Almeida ganben Tejus Pratap cui hexiang tinawang Juan David Parra Pimiento Andy Chong Ying Zhi Kevin Zhou Jasper Simranjit Singh Christopher Lamm 叶峻峣 TSAI LI TING zhutao George Alexiou Jobert Azares Tam Nguyen 
Venkatt Guhesan Anibal C C Budaye ARAN ROKA Valentine Chakravarthy Raghunandan Massimiliano Bertinetti Hieu Trinh J.T. Feng Gabor Lekeny LiHaotian Muyang Li Hao Tu Cetin Basoz Hazmi Amalul Rémy Deme Vincent Li Max Trense Matej Lach Joseph De Paola Damon Blais 陆 轶丰 Weihang Ding Li Fang TechMaster lenses.io Celso Souza Altafino Thomas Fritz Conrad Steenberg Damon Zhao George Opritescu Juanses Ankur Srivastava Lex Tang li3p

اموزش آیریس

ساخت یک پروژه جدید

$ mkdir myapp
$ cd myapp
$ go mod init myapp
$ go get github.com/kataras/iris/v12@master # or @v12.2.0-alpha2
نصب بر روی پروژه موجود
$ cd myapp
$ go get github.com/kataras/iris/v12@master
نصب با پرونده go.mod
module myapp

go 1.16

require github.com/kataras/iris/v12 master

آیریس شامل مستندات گسترده و کاملی است که کار با چارچوب را آسان می کند.

مستندات

برای اطلاعات بیشتر در مورد اسناد فنی می توانید به مستندات اصلی ما مراجعه کنید.

مستندات اصلی

دوست دارید در حین مسافرت کتاب بخوانید ?

Book cover

follow author on twitter

follow Iris web framework on twitter

follow Iris web framework on facebook

امروز می توانید از طریق کتاب الکترونیکی آیریس (نسخه جدید ، آینده v12.2.0 +) دسترسی PDF و دسترسی آنلاین داشته باشید و در توسعه آیریس شرکت کنید.

🙌 مشارکت

ما خیلی دوست داریم شما سهمی در توسعه چارچوب آیریس داشته باشید! برای دریافت اطلاعات بیشتر در مورد مشارکت در پروژه آیریس لطفاً پرونده CONTRIBUTING.md را مطالعه کنید.

لیست همه شرکت کنندگان

🛡 آسیب‌پذیری‌های امنیتی

اگر آسیب‌پذیری امنیتی در درون آیریس مشاهده کردید, لطفاً ایمیلی به iris-go@outlook.com بفرستید. کلیه ضعف‌های امنیتی بلافاصله مورد توجه قرار خواهند گرفت.

📝 مجوز

این پروژه تحت پروانه BSD 3-clause license مجوز دارد ، دقیقاً مانند پروژه Go.

نام پروژه “آیریس” از اساطیر یونانی الهام‌گرفته شده است.