Java JSON中的“意外标记o”
我有一个android应用程序,我试图将数据从editText发送到服务器。我正在尝试将数据打包到JSON:Java JSON中的“意外标记o”,java,android,Java,Android,我有一个android应用程序,我试图将数据从editText发送到服务器。我正在尝试将数据打包到JSON: editTextLogin = (EditText) findViewById(R.id.editTextLogin); editTextPass = (EditText) findViewById(R.id.editTextPass); JSONObject logPass = new JSONObject(); try { logPass.put("login", editT
editTextLogin = (EditText) findViewById(R.id.editTextLogin);
editTextPass = (EditText) findViewById(R.id.editTextPass);
JSONObject logPass = new JSONObject();
try {
logPass.put("login", editTextLogin.getText().toString());
logPass.put("pass", editTextPass.getText().toString());
} catch (JSONException e) {
e.printStackTrace();
}
mSocket.emit("logPass", logPass);
之后,我在服务器上收到这些数据,并尝试将其解析为JS对象:
socket.on('logPass', function(dataJSON) {
console.log(dataJSON.admin);
data = JSON.parse(dataJSON);
});
我可以打印dataJSON,它是:login:'admin',pass:'1234',但当我试图解析它时,我出现了错误:
意外标记o
这是什么?如何解决
import org.json.simple.JSONObject;
class JsonDemo {
public static void main(String[] args){
JSONObject obj = new JSONObject();
obj.put("login", "admin");
obj.put("pass", "admin123");
System.out.print(obj);
}
}
或
输出
{"login": "admin", "pass":"admin123"}
错误问题
mSocket.emit("logPass", logPass.toString());
我已经试过了,这是有效的。你的意思是:{login:admin,pass:1234}?我打赌你传递的字符串可能是重复的[object object]@Shaishav no,login:'admin'@JaromandaX Ok,以及如何解决它?Ok,但如何对editText.getText执行相同的操作?我也尝试像你一样简单地打印值,而且效果很好,但我需要把价值从editText@levshkatov使用\对字符串表示msocket.emitlogPass、logPass.toString的值进行转义;试试这个,也许吧work@Shaishav什么意思?我使用简单的管理1234,它没有\
mSocket.emit("logPass", logPass.toString());