을 사용하여 게시물 데이터 가져 오기 http 패키지에 익숙해 져 golang을 처음 사용했습니다. 우편 배달부를 통해 보내는 게시물 데이터를 가져 오는 데 문제가 있습니다.golang http 패키지
http://localhost:8084/dbTest
은 나의 URI입니다. 나는 key : hub_id
값 : 1
을 form-data를 사용하여 전달하고있다. 나는 다음과 같은 접근법을 시도했다.
req.ParseForm()
fmt.Println("hub_id", req.Form["hub_id"])
req.Form.Get("hub_id")
그러나 어떤 접근법도 시도하지 않았다. 나는 빈 반응을 얻고있다. 내가 얻을 REQ 인쇄 할 때
package main
import (
"fmt"
"net/http"
"log"
)
func dbtest(w http.ResponseWriter, req *http.Request) {
req.ParseForm()
fmt.Println("hub_id", req.Form["hub_id"])
req.Form.Get("hub_id")
fmt.Println(req.PostFormValue("hub_id")) //response is empty
}
func main() {
http.HandleFunc("/dbTest", dbtest)
log.Fatal(http.ListenAndServe(":8084", nil))
}
다음 :
&{POST /dbTest HTTP/1.1 1 1 map[Origin:[chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop] Connection:[keep-alive] Content-Type:[multipart/form-data; boundary=----WebKitFormBoundarydFOTVjOJMeqOHnS3] Content-Length:[138] Accept-Language:[en-US,en;q=0.8] Cache-Control:[no-cache] Accept-Encoding:[gzip, deflate] Accept:[*/*] User-Agent:[Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36] Postman-Token:[ac7ae3a9-60f6-2146-3f1c-209de7622774]] 0xc210012e70 138 [] false localhost:8084 map[] map[] <nil> map[] 127.0.0.1:34152 /dbTest <nil>}
해결 방법 : 다음
내 코드입니다 나는 해결책을 찾아 냈다. 이후, 콘텐츠 형식은 mulipart/form-data
양식을 구문 분석하는 올바른 방법은 req.ParseMultipartForm
http 메서드를 사용하는 것입니다.
html 템플릿을 표시하십시오. –
우편 배달부를 통해 데이터를 전송합니다. – Jagrati