1. 程式人生 > >.NET Core 獲取請求類容(body)

.NET Core 獲取請求類容(body)

 .Net Core 對於body多次讀取,開放了一個引數EnableRewind(),該引數在第一次讀取body之前開啟,之後body資訊可以多次讀取;core時代取消了之前的stream.position=0寫法,很多網上讀取流都換成了如下的方式,親測,確實沒有問題,但是。。。資料量多了以後,資料會被截斷,說明這種寫法是錯誤的,其實這個還是要說到一次可以讀取的值,雖然byte[] =new byte[lCLength.Value]  中的lCLength.Value超過1024語法並沒有錯,但是對於流讀取的話,一次最多是1024,如果一次需要讀取的大於1024,也不會報錯,會截斷,就是讀取的資訊不全。

 

 所以更新如下寫法:

 

 每次讀取完,記得actionContext.HttpContext.Request.Body.Position = 0;不然下次讀取不到內