Skip to content

Latest commit

 

History

History
561 lines (467 loc) · 66.3 KB

README_ZH_HANT.md

File metadata and controls

561 lines (467 loc) · 66.3 KB

Iris Web 框架

組建狀態 查看範例 聊天室 捐助

Iris 是款不僅迅速、簡捷,並且功能完善、高效率的 Go 語言 Web 框架。與 Go 生態系統中其它人提供的免費軟體套件不同,這個軟體保證終身主動維護。

想要取得接下來 v12.2.0 穩定版本(正在逐步推進 (2023🎅))的新消息,請收藏 🌟 並關注 👀 這個儲存庫!

Iris 能為你的下一個網站或 API,立下漂亮、富有表達性,且易於使用的基礎。

package main

import "github.com/kataras/iris/v12"

func main() {
  app := iris.New()
  app.Use(iris.Compression)

  app.Get("/", func(ctx iris.Context) {
    ctx.HTML("哈囉,<strong>%s</strong>!", "世界")
  })

  app.Listen(":8080")
}

據一位 Go 開發者 所言,Iris 能向您提供全方位的服務,並地位多年來屹立不搖

Iris 提供了至少這些功能:

  • HTTP/2 (Push, 甚至是 Embedded 資料)
  • 中介模組(存取日誌、基礎認證、CORS、gRPC、防機器人 hCaptcha、JWT、方法覆寫、模組版本顯示、監控、PPROF、速率限制、防機器人 reCaptcha、panic 救援、請求識別碼、重寫請求)
  • API 分版 (versioning)
  • MVC (Model-View-Controller) 模式
  • Websocket
  • gRPC
  • 自動啟用 HTTPS
  • 內建 ngrok 支援,讓您可以把 app 以最快速的方式推上網際網路
  • 包含動態路徑、具唯一性的路由,支援如 :uuid、:string、:int 等等的標準類型,並且可以自己建立
  • 壓縮功能
  • 檢視 (View) 算繪引擎 (HTML、Django、Amber、Handlebars、Pug/Jade 等等)
  • 建立自己的檔案伺服器,並寄存您自己的 WebDAV 伺服器
  • 快取
  • 本地化 (i18n、sitemap)
  • 連線階段管理
  • 豐富的回應格式(HTML、純文字、Markdown、XML、YAML、二進位、JSON、JSONP、Protocol Buffers、MessagePack、(HTTP) 內容協商、串流、Server-Sent Events 等)
  • 回應壓縮功能(gzip、deflate、brotli、snappy、s2)
  • 豐富的請求方式(綁定 URL 查詢、標頭、文字、XML、YAML、二進位、JSON、資料驗證、Protocol Buffers、MessagePack 等)
  • 依賴注入(MVC、處理常式 (handler)、API 路由)
  • 測試套件
  • 最重要的是…… 從發行第一天到現在(已經整整六年),解答與支援一直都十分迅速!

看看別人 是如何評價 Iris 的,並且 給這個開放原始碼專案一顆小星星,支持專案的潛力。

Benchmarks: Jul 18, 2020 at 10:46am (UTC)

你的一臂之力,能夠為大家帶來更好的開放原始碼 Web 開發體驗!

@github is now sponsoring you for $550.00 one time.

A note from your new sponsor:

To celebrate Maintainer Month we want to thank you for all you do for the open source community. Check out our blog post to learn more about how GitHub is investing in maintainers. https://github.blog/2022-06-24-thank-you-to-our-maintainers/

現已支援來自 中國 的捐款!

lensesio github getsentry thepunterbot draFWM gf3 simpleittools Remydeme CetinBasoz boomhut FernandoLangOFC Hongjian0619 Ramblestsad mukunhao trading-peter AlbinoGeek basilarchia sumjoe xiaozhuai celsosz TechMaster altafino alekperos hengestone thomasfr International Juanses ansrivas ekobayong lexrus li3p madhu72 se77en vincent-li DavidShaw sascha11110 derReineke Sirisap22 primadi agoncecelia hobysmith clacroix ixalender mubariz-ahmed Cesar Didainius DmarshalTU IwateKyle Little-YangYang Major2828 MatejLach coderperu cshum dtrifonov iantuan ichenhe xvalen xytis ElNovi KKP4 Lernakow aprinslo1 pixelheresy Jude-X KevinZhouRafael KrishManohar Laotanling MihaiPopescu1985 NA Neulhan NguyenPhuoc Oka00 RainerGevers SamuelNeves TianJIANG Ubun1 XinYoungCN YukinaMochizuki stgrosshh icibiri jfloresremar jingtianfeng kilarusravankumar leandrobraga lfbos lpintes macropas marcmmx mark2b miguel-devs mihado mmckeen75 narven odas0r olaf-lexemo pitexplore pr123 lipatti marman-hp mattbowen maxgozou mizzlespot mnievesco motogo rodrigoghm sankethpb mtrense mulyawansentosa nasoma nikharsaxena ozfive paulxu21 saz59 shadowfiga siriushaha phil535 pitt134 qiepeipei skurtz97 qiuzhanghua rapita rbondi relaera remopavithran rfunix rhernandez-itemsoft risallaw robivictor rxrw srinivasganti syrm tuhao1020 wahyuief thanasolykos ukitzmann kyoukhana spazzymoto ArishSultan ehayun kukaki oshirokazuhide t6tg AnatolyUA AwsIT BlackHole1 a112121788 acdias agent3bood algoflows annieruci b2cbd baoch254 bastengao bjoroen blackHoleNgc1277 bunnycodego carlos-enginner civicwar cnzhangquan donam-givita edwindna2 ekofedriyanto fenriz07 ffelipelimao frenchmajesty gastropulgite geGao123 gnosthi goten002 guanzi008 hdezoscar93 hieungm homerious hzxd jackptoke jeremiahyan joelywz kana99 keeio khasanovrs kkdaypenny knavels kohakuhubo kostasvk lafayetteDan leki75 liheyuan lingyingtan saleebm sbenimeli sebyno seun-otosho su1gen sukiejosh svirmi unixedia vadgun vguhesan vladimir-petukhov-sr vuhoanglam yonson2 SergeShin - BelmonduS CSRaghunandan martinlindhe mdamschen netbaalzovf oliverjosefzimmer valkuere lfaynman ArturWierzbicki GeorgeFourikis L-M-Sherlock aaxx claudemuller crashCoder dochoaj edsongley evillgenius75 gog200921 mwiater statik thejones evan grassshrimp hazmi-e205 jtgoral ky2s lauweliam letmestudy mblandr midhubalan ndimorle rosales-stephanie shyyawn vcruzato wangbl11 wofka72 xsokev oleang michalsz Curtman SridarDhandapani opusmagna b4zz4r bobmcallan fangli galois-tnp geoshan juanxme nguyentamvinhlong tejzpr theantichris tuxaanand raphael-brand HieuLsw carlosmoran092 yangxianglong

📖 學習 Iris

安裝

只要先安裝好 Go 程式語言 即可。

建立新專案

$ mkdir myapp
$ cd myapp
$ go mod init myapp
$ go get github.com/kataras/iris/v12@latest # 或 @v12.2.0
在現有專案安裝
$ cd myapp
$ go get github.com/kataras/iris/v12@latest

執行

$ go mod tidy -compat=1.20 # Windows 的話,請試試 -compat="1.20"
$ go run .

Iris 包含極其豐富且透徹的 文件,讓框架的入門觸手可及。

如需更為詳細的技術性文件,您可以前往我們的 godocs。如果要可以直接執行的程式碼,可以到 ./_examples 儲存庫的子目錄參閱。

想一邊旅行、一邊閱讀嗎?

Book cover

在 Twitter 上追蹤作者

在 Twitter 上追蹤 Iris Web 框架

在 Facebook 上追蹤 Iris Web 框架

您現在可以 請求索取 Iris 電子書(新版,針對未來版本 v12.2.0+) 的 PDF 和線上閱讀存取權限,並共同參與 Iris 的開發。

🙌 貢獻

我們殷切期盼你對 Iris Web 框架的貢獻!有關貢獻 Iris 專案的更多資訊,請參閱 CONTRIBUTING.md 檔案。

所有貢獻者名單

🛡 安全性漏洞

如果你發現 Iris 中有安全性漏洞,請寄一封電子郵件至 [email protected]。我們會儘速解決所有安全性漏洞。

📝 授權條款

本專案和 Go 語言相同,皆採 BSD 3-clause 授權條款 授權。

專案的名稱「Iris」取材自希臘神話。