【okhttp】Post請求設置utf-8編碼(解決漢語請求亂碼問題)

 如果用FormBody 發送post表單請求,就不能設置編碼格式,contentType方法沒有暴露出來,默認也不是UTF-8,參數是漢字就會亂碼。

所以換一種方式 ,用   RequestBody

public static final MediaType FORM_CONTENT_TYPE
            = MediaType.parse("application/x-www-form-urlencoded; charset=utf-8");


Map<String,String> formParams;//傳參 
  
StringBuffer sb = new StringBuffer();
                    //設置表單參數
                    for (String key: formParams.keySet()) {
//                      
                        sb.append(key+"="+formParams.get(key)+"&");
                    }
                    Log.i("TAG", ""+sb.toString());

                    RequestBody body = RequestBody.create(FORM_CONTENT_TYPE, sb.toString());

                    //創建請求
                    request = new Request.Builder()
                            .url(url)
                            .post(body)
                            .build();






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