Go - iris 프레임 워 크 핵심 내용
4824 단어 학습 과정
Iris 프레임 워 크
1. 아이 리 스 소개
2. Iris 인 스 턴 스 데모
3. Get, Post, Put, Delete
Iris 프레임 워 크
1. 아이 리 스 소개
Go 의 웹 프레임 워 크 는 실행 가능 한 서비스 하나만 있 으 면 여러 플랫폼 에서 실 행 될 수 있 습 니 다.MVC 지원, 마이크로 서비스 구축.가장 빠 른 속도 로 불 리 는 고 백 엔 드 개발 프레임 워 크.
Windows :
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
go get -u github.com/gin-gonic/gin
go get github.com/kataras/iris/
Linux
export GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
go get -u github.com/gin-gonic/gin
go get github.com/kataras/iris/
GoLang import "github.com/kataras/iris" IDE ^_^
-------------2020.4.26-----------
GO111MODULE , :off、on、auto, auto。
GO111MODULE=off ,go GOPATH vendor 。
GO111MODULE=on ,go GOPATH vendor , go.mod 。
GO111MODULE=auto $GOPATH/src go.mod , 。
go env -w GO111MODULE=on Go 1.11 mod
gopath pkg/mod 。
mod , , go get -u XXX ( , )
홈 페이지:https://iris-go.com/ 원본 코드:https://github.com/kataras/iris 문서: https://studyiris.com/doc/
프로젝트 의 구 조 는 다음 과 같이 기획 할 수 있다.
#
├─bin #
├─pkg #
└─src #
├─github.com
└─XXXtech.com # GitHub
└─tomasonl# /
├─project1 #
│ ├─ moduleA # A
│ └─ moduleB # B
└─project2 #
├─ moduleA # A
└─ moduleB # B
#
├─bin #
├─pkg #
└─src #
├─github.com
└─tomasonl.com # GitHub
└─leo # /
├─project1 #
│ ├─ moduleA # A
│ └─ moduleB # B
└─project2 #
├─ moduleA # A
└─ moduleB # B
2. Iris 실례 데모
package main
import "github.com/kataras/iris"
func main() {
//1. app
app := iris.New()
//2.
app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed))
//app.Run(iris.Addr(":8080"))//
//app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed)) //
}
----------------------------------------------------------
$ go run example.go
Now listening on: http://localhost:8080
Application started. Press CTRL+C to shut down.
3. Get, Post, Put, Delete
package main
import (
"github.com/kataras/iris"
"github.com/kataras/iris/context"
)
//main
func main() {
app := iris.New()
// Get
app.Get("/getRequest",func(context context.Context){
path := context.Path()
app.Logger().Info(path)
context.WriteString(" :"+path)
})
//Get
app.Get("/userinfo", func(context context.Context){
userName := context.URLParam("username")
pwd := context.URLParam("pwd")
context.HTML(" :"+userName+" :"+pwd)
})
//Post -form
app.Post("/postLogin", func(context context.Context) {
name := context.PostValue("name")
pwd := context.PostValue("pwd")
context.HTML(" :"+userName+" :"+pwd)
})
//Post -Json
//Json :{"name": "leo","age": 18}
app.Post("/postJson", func(context context.Context) {
//Json
var person Person
if err := context.ReadJSON(&person); err != nil {
panic(err.Error())
}
context.Writef(" : %#+v
", person)
// : : main.Person{Name:"davie", Age:28}
})
//Post -Xml
/**
* :Content-Type application/xml( )
* :
* *
* leo
* 18
*
*/
app.Post("/postXml", func(context context.Context) {
//XML
var student Student
if err := context.ReadXML(&student); err != nil {
panic(err.Error())
}
// :
context.Writef("Received:%#+v
", student)
})
//put
app.Put("/putinfo", func(context context.Context) {
path := context.Path()
app.Logger().Info(" url:", path)
})
//delete
app.Delete("/deleteuser", func(context context.Context) {
path := context.Path()
app.Logger().Info("Delete url:", path)
})
app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed))
}
PS: fmt. Printf 는 뒤의 매개 변수 에 따라 앞의 문자열 을 포맷 합 니 다. fmt. Println 은 형식 문자열 없 이 출력 하지 않 습 니 다.%v 필드 의 값% + v 필드 형식 + 필드 의 값%\# v 구조 체 이름 값 + 재 출력 구조 체 (필드 형식 + 필드 의 값)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Go - iris 프레임 워 크 핵심 내용목차 Iris 프레임 워 크 1. 아이 리 스 소개 2. Iris 인 스 턴 스 데모 3. Get, Post, Put, Delete Iris 프레임 워 크 1. 아이 리 스 소개 Go 의 웹 프레임 워 크 는 실행 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.