전체 글 썸네일형 리스트형 Go 채팅서버 https://www.youtube.com/watch?v=R_v4fxoNKMg&list=PLy-g2fnSzUTDALoERcKDniql16SAaQYHF&index=13 Websocket 을 이용한 Echo Server go 서버 package main import ( "fmt" "log" "net/http" "github.com/gorilla/pat" "github.com/gorilla/websocket" "github.com/urfave/negroni" ) var upgrader = websocket.Upgrader{ ReadBufferSize: 1024, WriteBufferSize: 1024, } type Message struct { Type string `json:"type"` Data inter.. 더보기 Go 웹서버관련 - Render, Pat, Negroni https://www.youtube.com/watch?v=TjbUnpW7wyA net/http 의 NewServeMux를 사용한 웹서버 구축 package main import ( "encoding/json" "fmt" "net/http" ) type User struct { Name string `json:"name"` Email string `json:"email"` } func getUserInfoHandler(w http.ResponseWriter, r *http.Request) { user := User{Name: "tucket", Email: "tucket@naver.com"} w.Header().Add("Content-type", "application/json") w.WriteHeader(.. 더보기 [묘공단] Tucker의 Go 언어 프로그래밍 31장 : Todo 리스트 웹사이트 만들기 준비하기 urfave/negroni 패키지 설치 unrolled/render 패키지 설치 웹서버만들기 프론트엔드 만들기 웹배포방법 고려하기 헤로쿠로 배포하기 준비하기 urfave/negroni 패키지 설치 negroni 패키지는 net/http를 직접적으로 이용할 수 있도록 디자인된 미들웨어 중심의 라이브러리이다. https://github.com/urfave/negroni/blob/master/translations/README_ko_KR.md 아래 명령으로 해당 패키지를 설치한다. go get github.com/urfave/negroni package main import ( "fmt" "net/http" "github.com/urfave/negroni" ) func main() { mux := h.. 더보기 [묘공단] Tucker의 Go 언어 프로그래밍 30장 : RESTful API 서버 만들기 30.1 해법 30.2 사전지식 : RESTful API 30.3 RESTful API 서버 만들기 30.4 테스트 코드 작성하기 30.5 특정 학생 데이터 반환하기 30.6 학생 데이터 추가/삭제하기 30.1 해법 gorilla / mux 와 같은 RESTful API 웹서버 제작을 도와주는 패키지를 설치한다. RESTful API에 맞춰서 웹 핸들러 함수를 만들어준다. RESTful API를 테스트하는 테스트 코드를 만든다. 웹브라우저로 데이터를 조회한다. 30.2 사전지식 : RESTful API REST (Representational State Transfer) 는 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스이다. 30.3 RESTful API 서버 만들기.. 더보기 [묘공단] Tucker의 Go 언어 프로그래밍 29장 : Go언어로 만드는 웹서버 HTTP 웹서버 만들기 HTTP 동작원리 HTTP 쿼리 인수 사용하기 ServeMux 인스턴스 사용하기 파일서버 웹서버 테스트 코드 만들기 JSON데이터 전송 HTTPS웹서버 만들기 HTTP 웹서버 만들기 http.HandleFunc() 로 웹핸들러를 등록하고, http.ListenAndServe() 웹서버를 시작한다. // ch29/ex29.1/ex29.1.go package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprint(w, "Method : ", r.Method, "\n") fmt.Fprint(w, "Path: ", r.U.. 더보기 [묘공단] Tucker의 Go 언어 프로그래밍 26장 : 단어검색프로그램 목적 여러 텍스트파일에서 단어를 검색한다. 사용법 find 찾을단어 대상텍스트파일 주요패키지 os, path/filepath, strings, bufio 파일 목록을 가져오는 함수 아래소스는 실행할때 인수를 받아서, 해당 인수에 해당하는 파일목록을 출력하는 프로그램이다. //ch26/ex26.1//ex26.1.go package main import ( "fmt" "os" "path/filepath" ) func main() { if len(os.Args) < 3 { // ❶ 실행 인수 개수 확인 fmt.Println("2개 이상의 실행 인수가 필요합니다. ex) ex26.1 word filepath") return } word := os.Args[1] // ❷ 실행 인수 가져오기 files := os... 더보기 3장 Node.js와 익스프레스로 웹애플리케이션 서버 구현하기 3.1 OK를 반환하는 서버 만들기 3.2 라우터만들기 3.3 createServer() refactoring 하기 3.4 동적으로 응답하기 3.5 라우터 리팩터링하기 3.6 익스프레스 프레임워크 사용하기 3.7 익스프레스로 간단한 API서버 만들기 3.8 게시판 API 테스트하기 3.1 OK를 반환하는 서버 만들기 const http = require("http"); 로 http 모듈을 불러온다. const server = http.createServer(); 로 서버를 만들고, server.listen()으로 서버를 시작한다. 포트는 3000번이고, 3000번으로 http 요청시 OK를 보내주는 간단한 소스이다. const http = require("http"); const server = http.. 더보기 2장 Node.js로 백엔드 입문하기 node.js설치 (http://nodejs.org) 2.1 Node.js 소개 Node.js는 V8엔진을 사용하는 서버측 자바스크립트 런타임 환경이다. 기존에는 논블로킹/비동기 API를 서버환경에서 구현하는데 어려웠는데, Node.JS는 이벤트기반의 비동기 환경으로 쉽게 개발할수있도록 하여, 2009년에 발표되었다. 2010년에는 npm이라는 패키지 매니저를 공개하였다. 웹프레임워크 기술에서 익스프레스가 3위를 차지할정도로 Node.js는 많이 사용된다. (익스프레스는 Node.js상에서 동작하는 웹 개발 프레임워크이다.) https://insights.stackoverflow.com/survey/2021#most-popular-technologies-webframe 2.2 Node.js는 서버에서 어.. 더보기 이전 1 2 다음