Go 베이스

2385 단어 golangtech

기초 문법

  • _(밑줄) 밑줄 변수라고 하며 선언하지만 나중에 사용하지 않는 변수를 나타냅니다.
  • 슬라이스의 내용을 제거하려면 밑줄 변수를 사용합니다.
    for _, value := range values {
        fmt.Println(value)
    }
    
    슬라이드에서 키와value를 꺼냅니다.
    for key, value := range values {
        fmt.Println(key)
        fmt.Println(value)
    }
    

    api의uri에서 요청 인자 가져오기


    var param string = r.FormValue("param1")
    

    웹 서버 시작

  • main.go 파일에서 함수를 먼저 실행main

  • maingo run main.go에서goo가 컴파일되어 실행되고api용 웹 서버가 시작됩니다.
  • main.go
    package main
    
    import (
    	"encoding/json"
    	"fmt"
    	"net/http"
    )
    
    func main() {
    	StartWebServer()
    }
    
    func StartWebServer() {
    	fmt.Println("Start Web Server")
    	http.HandleFunc("/getUser", getUser)
    	http.ListenAndServe(fmt.Sprintf(":%d", 60000), nil)
    	return
    }
    
    func getUser(w http.ResponseWriter, r *http.Request) {
    
    	var user_name string = "taro"
    
    	w.Header().Set("Content-Type", "application/json")
    	json.NewEncoder(w).Encode(user_name)
    }
    

    go mod


    goo module의 초기화


    go mod init <project-name>
    
    ### 公開前提の場合はモジュールのパスを指定する
    $ go mod init github.com/nishina555/go-example
    

    매크로 패키지의 설치 지정


    개별 패키지 설치 시
    go get [パッケージ名]
    

    import에 기재된 패키지 설치 시


    go mod tidy
    

    다음은 의존 소프트웨어 패키지를 통일적으로 설치합니다.


    go install
    
    https://zenn.dev/optimisuke/articles/105feac3f8e726830f8c

    세 점


    지정한 디렉터리 아래의 모든 파일을 가리킨다.
    go generate ./...
    
    https://ja.stackoverflow.com/questions/40796/go-get세 시

    좋은 웹페이지 즐겨찾기