介面對接遇到的神坑

2022-04-01 19:00:07 字數 384 閱讀 5946

head頭的編碼與body報文編碼不一致,curl請求導致接收到的報文不完整

比如某次對接過程中,對方返回的head頭是gbk編碼(content-type: text/xml; charset=gbk),但是body裡面的報文是utf-8編碼,導致返回的報文不完整

具體原因是因為gbk編碼,乙個中文字元是占用兩個位元組,而utf-8編碼乙個中文字元是占用三個位元組,curl請求響應回來的字元長度是按照gbk編碼計算的,導致計算出來的報文字元長度是小於實際長度的,所以讀取響應資料的時候,讀到計算出來的長度時候就停止了,也就會出現返回的報文不完整情況

不採用curl方法進行請求,改用file_get_contents方法,因為file_get_contents不會返回head資訊,所以不會出現編碼不一致的情況

小程式介面對接

wx.request data success function res wx.redirectto wx.showtoast fail function res complete function res data 乙個入參,如果是get方法從伺服器取資料data可以為空,如果是其他 post,p...

SendMessage 遇到的神坑

場景 兩個程序a和b,需要從a中設定b中的文字框的內容 過程x.x.x.x.成功獲取了b中的內容,驚喜,離成功更近非同步 x x.x.x.x.大約查詢了幾百個網頁之後 準備自學c 準備買書學習hook技術 準備 xx 解決經過兩天一上午奮戰後,困的要死,午休。當然解決方案跟午休沒有毛關係 醒來之後渾...

快遞API介面對接分析

1.快遞查詢api介面 對於現在的網上購物,我買的東西發到哪了?這是每個買家越來越關心的問題,我 的物流資訊跟蹤服務客戶的體驗效果還滿意嗎?這是每個賣家越來越操心的問題,因為在現代社會中,人們不僅僅在乎商品本身的價值,而且在乎甚至更在乎服務的價值體現!而目前快遞查詢api的模式有兩種,一種是即時查詢...