>백엔드 개발 >Golang >프레임워크 없이 Go의 HTTP 요청에서 경로 매개변수를 추출하는 방법은 무엇입니까?

프레임워크 없이 Go의 HTTP 요청에서 경로 매개변수를 추출하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-11 17:41:03992검색

How to Extract Path Parameters from HTTP Requests in Go Without Frameworks?

Go의 HTTP 요청에서 경로 매개변수 검색

Go에서 웹 프레임워크를 활용하지 않고 REST API를 개발하려면 경로 매핑을 수동으로 처리하고 수신 HTTP 요청에서 경로 매개변수를 추출해야 합니다. 이 문서에서는 표준 http 패키지만 사용하는 솔루션을 제공합니다.

경로 매핑 및 매개변수 검색

경로를 핸들러에 매핑하고 해당 경로 매개변수를 검색하려면 다음 단계를 수행하세요.

1. 경로 라우팅:

지정된 경로를 핸들러 함수와 연결하려면 http.HandleFunc 함수를 사용하십시오. 예를 들어 /provisions/:id 경로를 매핑하려면 다음을 사용합니다.

http.HandleFunc("/provisions/", Provisions)

2. 매개변수 추출:

핸들러 함수 내에서 요청 URL의 경로를 분할하여 경로 매개변수를 추출합니다. 예를 들어, /provisions/:id 경로에서 id 매개변수를 검색하려면:

id := strings.TrimPrefix(req.URL.Path, "/provisions/")

문자열을 활용할 수도 있습니다. 더 복잡한 경로 구조를 위해 분할 또는 정규 표현식을 사용할 수도 있습니다.

예제 코드

제공된 코드 조각은 다음 단계를 구현하는 방법을 보여줍니다.

func main() {
    http.HandleFunc("/provisions/", Provisions)
    http.ListenAndServe(":8080", nil)
}

func Provisions(w http.ResponseWriter, r *http.Request) {
    // Retrieve "id" parameter
    id := strings.TrimPrefix(req.URL.Path, "/provisions/")

    // Handle the request using the extracted path parameter
}

이 접근 방식을 활용하면 외부 종속성을 도입하지 않고도 경로 매핑 및 매개변수 검색을 완전히 제어할 수 있습니다.

위 내용은 프레임워크 없이 Go의 HTTP 요청에서 경로 매개변수를 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.