我准备了一个API,我想用json发布一个特定的数据。
在与Fiddler或网站方面合作时,我的代码工作正常。
但问题是,当我们将Android版本用作客户端设备时,某些角色没有发送。
例如:
字符串a ="mn✈" //在任何设备上更正(android,site,Fiddler,...)
字符串b ="mn✉" //在任何设备上更正(除了(android)//获得500响应
String requestURL = Utils.SERVER_URL + "PostJsonFeatures";
HttpURLConnection conn = (HttpURLConnection) new URL(requestURL).openConnection();
conn.setReadTimeout(15000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json");
JSONObject postDataParams = new JSONObject();
postDataParams.put("Features", getAttributes());
postDataParams.put("productId", productId);
postDataParams.put("groupId", catId);
postDataParams.put("brandId", PrefManager.getInstance(context).getCompanyId());
postDataParams.put("languageId", PrefManager.getInstance(context).getLanguageApi());
DataOutputStream printout = new DataOutputStream(conn.getOutputStream ());
printout.write(postDataParams.toString().getBytes());
printout.flush ();
printout.close ();
答案 0 :(得分:0)
您可以解码为字符串并传入网址。
String parseString = URLDecoder.decode(URLEncoder.encode(myString, "UTF-8"), "ISO-8859-1");