【okhttp】Post請求設定utf-8編碼(解決漢語請求亂碼問題)
阿新 • • 發佈:2019-02-16
如果用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();