關於android的RN項目XMLHttpRequest請求的中文參數編碼轉換問題

如果XMLHttpRequest請求一個utf8編碼的網站的話,中文可以使用js中的encodeURIComponent()方法進行轉碼

下面說一下請求gbk網站時,對中文的轉碼方法:

_encode(str, charset) {
        //得到中文的gbk二進制數組
        var buf = iconvLite.encode(str, charset);
        var encodeStr = '';
        var ch = '';
        //將數組中的每一個元素轉換成16進制,轉換後的長度小於2的在前面加0,然後用%拼接
        for (var i = 0; i < buf.length; i++) {
            ch = buf[i].toString('16');
            if (ch.length === 1) {
                ch = '0' + ch;
            }
            encodeStr += '%' + ch;
        }
        encodeStr = encodeStr.toUpperCase();
        return encodeStr;
    }

如果上面還不能解決需要的話可以看看下面這個鏈接
https://segmentfault.com/a/1190000006919102

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章