Go 언어

본문 바로가기
사이트 내 전체검색


Go 언어
Go 언어

5. echo 프레임워크

페이지 정보

작성자 관리자 댓글 0건 조회 1,106회 작성일 21-07-17 23:24

본문

5. echo 프레임워크

go언어 웹프레임워크들


https://wikinote.bluemir.me/golang/choose-web-framework.md


https://jaehue.github.io/post/go-my-way-1-webframework/


https://okky.kr/article/386116


https://www.buzzvil.com/ko/2018/02/12/tech-blog-go-%EC%84%9C%EB%B2%84-%EA%B0%9C%EB%B0%9C%ED%95%98%EA%B8%B0/


https://dev.to/speedwheel/top-6-web-frameworks-for-go-as-of-2017-34i 



echo 프레임워크 사용하기



[jklee@www golang]$ cd echo_test/

[jklee@www echo_test]$ go mod init echo_test

go: creating new go.mod: module echo_test

[jklee@www echo_test]$


[jklee@www echo_test]$ vi go-simple-restful-api.go

package main

import (
"github.com/labstack/echo"
"net/http"
)

func main() {

// Echo 변수를 생성하고, 포인터 변수에 이 변수의 주소를 저장
e := echo.New() 


// URI:8080/say로 오는 모든 요청을 이 함수가 담당
e.GET("/say", func(c echo.Context) error { 
return c.JSON(http.StatusOK, "hi")
})

//Fatal은 에러가 있을 시, 에러 메시지를 노출하고, os.Exit(0이 아닌 정수)을 호출하여 프로그램을 종료
e.Logger.Fatal(e.Start(":8080"))
}
 

[jklee@www echo_test]$ go install
go-simple-restful-api.go:4:2: no required module provides package github.com/labstack/echo; to add it:
        go get github.com/labstack/echo
[jklee@www echo_test]$ go get github.com/labstack/echo
go: downloading github.com/labstack/echo v1.4.4
go: downloading github.com/labstack/echo v3.3.10+incompatible
go: downloading github.com/labstack/gommon v0.3.0
go: downloading github.com/mattn/go-colorable v0.1.2
go: downloading github.com/valyala/fasttemplate v1.0.1
go: downloading github.com/mattn/go-isatty v0.0.9
go: downloading github.com/valyala/bytebufferpool v1.0.0
go get: added github.com/labstack/echo v3.3.10+incompatible
go get: added github.com/labstack/gommon v0.3.0
go get: added golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97
[jklee@www echo_test]$ go install
[jklee@www echo_test]$ echo_test

   ____    __
  / __/___/ /  ___
 / _// __/ _ \/ _ \
/___/\__/_//_/\___/ v3.3.10-dev
High performance, minimalist Go web framework
____________________________________O/_______
                                    O\
⇨ http server started on [::]:8080
 

웹브라우저에서 호출한다. http://아이피:8080



새로운 터미널을 열고 포트를 열어준다.


[root@www ~]# firewall-cmd --zone=public --permanent --add-port=8080/tcp

success

[root@www ~]# firewall-cmd --reload

success

[root@www ~]#


다시 웹브라우저로 접속해 본다.


1.PNG


2.PNG

// 하위 url을 두고 싶을때

e.GET("/say/:name", func(c echo.Context) error {

   name := c.Param("name")

   return c.JSON(http.StatusOK, name)

})


파일을 수정하고 다시 컴파일한다.


⇨ http server started on [::]:8080

^C 

[jklee@www echo_test]$ go install

[jklee@www echo_test]$ echo_test


   ____    __

  / __/___/ /  ___

 / _// __/ _ \/ _ \

/___/\__/_//_/\___/ v3.3.10-dev

High performance, minimalist Go web framework

https://echo.labstack.com

____________________________________O/_______

                                    O\

⇨ http server started on [::]:8080


3.PNG


댓글목록

등록된 댓글이 없습니다.


개인정보취급방침 서비스이용약관 모바일 버전으로 보기 상단으로

TEL. 063-469-4551 FAX. 063-469-4560 전북 군산시 대학로 558
군산대학교 컴퓨터정보공학과

Copyright © www.leelab.co.kr. All rights reserved.