Back to Iris

Iris Web Framework

README_FA.md

12.2.118.2 KB
Original Source
<div dir="rtl">

خبرها

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

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

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

Iris Web Framework

<!--[![report card](https://img.shields.io/badge/report%20card-a%2B-ff3333.svg?style=for-the-badge)](https://goreportcard.com/report/github.com/kataras/iris)--><!--[![godocs](https://img.shields.io/badge/go-%20docs-488AC7.svg?style=for-the-badge)](https://pkg.go.dev/github.com/kataras/iris/[email protected])--> <!--[![donate on PayPal](https://img.shields.io/badge/support-PayPal-blue.svg?style=for-the-badge)](https://iris-go.com/donate)--><!-- [![release](https://img.shields.io/badge/release%20-v12.0-0077b3.svg?style=for-the-badge)](https://github.com/kataras/iris/releases) -->

آیریس یک چارچوب وب پر سرعت ، ساده و در عین حال کاملاً برجسته و بسیار کارآمد برای Go است.

</div> <details><summary>Simple Handler</summary>
go
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)
}

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

</details> <details><summary>Handler with custom input and output arguments</summary>

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

</details> <details><summary>MVC</summary>
go
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",
  }
}

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

</details> <div dir="rtl">

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

👑 <a href="https://iris-go.com/donate">حامیان</a>

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

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

اموزش آیریس

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

</div>
sh
$ mkdir myapp
$ cd myapp
$ go mod init myapp
$ go get github.com/kataras/iris/v12@latest # or @v12.2.11
<div dir="rtl"> <summary>نصب بر روی پروژه موجود</summary> </div>
sh
$ cd myapp
$ go get github.com/kataras/iris/v12@latest
<div dir="rtl"> <summary>نصب با پرونده go.mod</summary> </div>
txt
module myapp

go 1.20

require github.com/kataras/iris/v12 v12.2.0-beta4.0.20220920072528-ff81f370625a

<div dir="rtl"> آیریس شامل مستندات گسترده و کاملی است که کار با چارچوب را آسان می کند.

مستندات

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

مستندات اصلی

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

<a href="https://iris-go.com/#book"> </a>

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

🙌 مشارکت

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

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

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

اگر آسیب‌پذیری امنیتی در درون آیریس مشاهده کردید, لطفاً ایمیلی به [email protected] بفرستید. کلیه ضعف‌های امنیتی بلافاصله مورد توجه قرار خواهند گرفت.

📝 مجوز

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

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

</div>