1. 程式人生 > >訊息頭為Transfer-Encoding:chunked時使用fiddler更改響應值,提示解碼失敗

訊息頭為Transfer-Encoding:chunked時使用fiddler更改響應值,提示解碼失敗

在使用fiddler更改服務端返回的值時候,在瀏覽器上解碼失敗net::err_invalid_chunked_encoding ,查了許久,是因為改發返回值的時候,長度也發生了變化,所以需要將長度值也改了才能成功
只更改響應值:

瀏覽器提示解碼失敗,net::err_invalid_chunked_encoding
這裡寫圖片描述
百度之後發現是因為訊息頭使用的是Transfer-Encoding:chunked,用另一種方式傳送資料長度值
這裡寫圖片描述
更改:
使用的是十六進位制的方式傳送長度數值,當我將11改成111時,長度發生了變化,所以需要將之前的bf改成c0,(bf和c0是十六進位制形式,十進位制分別為190和191)
這裡寫圖片描述


瀏覽器解碼成功:
這裡寫圖片描述

為什麼會查很久呢,因為自己沒注意看響應資料前一行和最後一行的字元,以為是fiddler出現的亂碼,哈哈哈,深刻的教訓
雖然這看起來是個小問題,但是出現這個問題後各種方式百度,又自己除錯才找到原因得到這個答案
Transfer-Encoding:chunked參考資料https://www.cnblogs.com/xuehaoyue/p/6639029.html