golang接收post和get請求參數處理

1、golang中獲取請求接口中數據(GET)

方式一: API參數 ctx.Param(name string)或者ctx.Params.ByName(name string)

前端請求為:

"http://localhost:8080/api/book/paging/"+this.pageNum+"/"+this.pageSize
//形式為:"http://localhost:8080/api/book/paging/2/2

此時後端路由寫為:

r.GET("/api/book/paging/:page_num/:page_size",controller.Paging)

後端接收路徑中參數:

pageSize,_:=strconv.Atoi(ctx.Param("page_size"))//它是下面的簡寫
pageNum,_:=strconv.Atoi(ctx.Params.ByName("page_num"))

方式二:URL參數 ctx.Query(name string)

前端請求為:

"http://localhost:8080/api/book/paging?page_num="+this.pageNum+"&page_size="+this.pageSize
//形式為:"http://localhost:8080/api/book/paging?page_num=2&page_size=2

此時後端路由寫為:

r.GET("/api/book/paging",controller.Paging)

後端接收路徑中參數:

pageSize,_:=strconv.Atoi(ctx.Query("page_size"))
pageNum,_:=strconv.Atoi(ctx.Query("page_num"))

2、golang中獲取請求接口中數據(POST)

方式1:

    var requestUser=model.User{}
    _=ctx.Bind(&requestUser)
    //獲取參數
    telephone:=requestUser.Telephone
    password:=requestUser.Password

方式2:

    //使用map獲取請求的參數
    var requestMap=make(map[string]string)
    _ = json.NewDecoder(ctx.Request.Body).Decode(&requestMap)

方式3:

    var requestRegister=model.User{}
    json.NewDecoder(ctx.Request.Body).Decode(&requestRegister)

到此這篇關於golang接收post和get請求參數處理的文章就介紹到這瞭,更多相關golang post和get請求內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: