在我的应用程序中,我请求服务器提供数据,以便在用户配置文件视图中显示。App读取JSON数据,解析JSON数据并粘贴到表单字段中。没有问题的字符集和应用程序读取西里尔字符串。
当我试图更新我的个人资料时,我遇到了问题:
JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, "http://meWebSite.com/userProfile.php?act=edit"
+"&user_id="+user_id+
"&country="+country_1.getText().toString()+
"&city="+city_1.getText().toString(),
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
parceEditingJsonRequest(response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});在这种情况下,所有的西里尔字符串看起来像?
我打印了请求字符串并将其粘贴到浏览器--一切正常--西里尔字符串被正确地提交到服务器端,因此我决定服务器端没有出现问题。
我真的不知道从哪里开始。也许我应该为这个请求指定字符集?
发布于 2015-09-08 21:36:24
看看URLEncoder,即:
JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, "http://meWebSite.com/userProfile.php?act=edit"
+"&user_id="+URLEncoder.encode(user_id, "UTF-8")+
"&country="+URLEncoder.encode(country_1.getText().toString(), "UTF-8")+
"&city="+URLEncoder.encode(city_1.getText().toString(), "UTF-8"),然后,如果需要,在服务器端,如果使用php,则可以使用编码,编码或解码。
https://stackoverflow.com/questions/32467279
复制相似问题