2019年6月5日更新:
其实想了一下,还是把数据进行Base64编码再传递给后台的方式更好,可以避免很多问题。
先上我在项目中的解决办法:
添加:@Headers("Content-Type:application/json; charset=utf-8")这个注解,即
@POST("xxxx")
@FormUrlEncoded
@Headers("Content-Type:application/json; charset=utf-8")
Call<Bean> postXxx(@Field("xx") String xx);
参考:https://blog.youkuaiyun.com/wangzhen19891010/article/details/52368396
他是说添加:@Headers("Content-Type:application/x-www-form-urlencoded; charset=utf-8"),在我的项目中不起作用,可能的原因是我的提交使用了json,所以我改成了Content-Type:application/json,问题解决
注:我的retrofit版本是2.3.0