我的API(nodejs)和我的Android客户端之间有关于编码的问题。
Android排球请求:
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, tmpUrl, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.e("TEST", "" + response.toString());
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
}
);
queue.add(jsObjRequest);
我的GET请求标题:
content-type → application/json; charset=utf-8
测试日志:
TEST: {"announces":[{"_id":"56360bca8c9356a3289788aa","title":"marché", ....
普通标题应为“marché”,但它不起作用..
问题出在哪里? API或Android客户端?我在不同的项目中使用了这个凌空库,一切正常......
答案 0 :(得分:1)
两者都不一定是错的,它们只是不匹配。 您的客户端假设结果的编码是UTF-8,但显然不是。
所以,你有两个选择 - 强制nodejs返回UTF-8,或者找出它返回的编码,并在Android端使用它。