Go에서 정규 표현식과 URL 일치
Go에서 http.HandleFunc()는 특정 URL 패턴을 처리하도록 설계되었습니다. 그러나 정규식을 사용하여 패턴을 일치시키는 데는 적합하지 않습니다.
대체 솔루션:
대신 다음 솔루션을 고려하세요.
// Match everything http.HandleFunc("/", route) var rNum = regexp.MustCompile(`\d`) // Has digit(s) func route(w http.ResponseWriter, r *http.Request) { if rNum.MatchString(r.URL.Path) { digits(w, r) } else { w.Write([]byte("No digits found")) } }
예를 들어 Gorilla MUX를 사용하는 경우:
r := mux.NewRouter() r.HandleFunc("/digits", digitsHandler).Methods("GET") r.HandleFunc("/abc", abcHandler).Methods("POST") http.Handle("/", r)
이러한 각 방법을 사용하면 특정 요구 사항에 따라 보다 자세한 URL 일치가 가능합니다.
위 내용은 Go에서 URL을 정규 표현식과 일치시키는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!