第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Golang 讀取時 http.Request.Body 中沒有內(nèi)容

使用 Golang 讀取時 http.Request.Body 中沒有內(nèi)容

Go
浮云間 2021-11-08 18:28:00
注意:為簡單起見,省略了所有錯誤處理代碼。我在本地處理它們,沒有產(chǎn)生錯誤。在 Golang 中,我嘗試使用下面的代碼http.Request.Body從 POST 請求中讀取 a :func readBody(req *http.Request) string {    bytes, _ := httputils.DumpRequestOut(req, true)    return string(bytes)}它顯示了一個非零的 Content-Length,但沒有返回任何內(nèi)容:ContentLength=413 with Body length 0. 我嘗試了下面的代碼,也沒有運氣:func readBody(req *http.Request) string {    bytes, _ := ioutil.ReadAll(req.Body)    return string(bytes)}它返回一個空字符串。google了下,找到了一篇關(guān)于這個問題的博客:Golang: Read from an io.ReadWriter without lost its content。我試圖遵循模式,但仍然沒有運氣:func readBody(req *http.Request) string {    bodyBytes, _ := ioutil.ReadAll(req.Body)    // Restore the io.ReadCloser to its original state    req.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes))    // Use the content    return string(bodyBytes)}有什么建議?提前致謝 :)
查看完整描述

2 回答

?
繁花如伊

TA貢獻2012條經(jīng)驗 獲得超12個贊

如果請求不包含適當(dāng)?shù)摹癈ontent-Type”標頭,當(dāng)您嘗試閱讀它時,您可能會看到長度為 0 的正文。


查看完整回答
反對 回復(fù) 2021-11-08
?
大話西游666

TA貢獻1817條經(jīng)驗 獲得超14個贊

發(fā)生這種情況是因為您httputils.DumpRequestOut(req, true)在 http 客戶端執(zhí)行請求并且正文耗盡后調(diào)用。

確保按順序執(zhí)行以下步驟:

  1. httputils.DumpRequestOut(req, true)

  2. resp, err :=http.DefaultClient.Do(req)

  3. httputil.DumpResponse(res, true)


查看完整回答
反對 回復(fù) 2021-11-08
  • 2 回答
  • 0 關(guān)注
  • 919 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號