parse用于从一个字符串中解析出json对象
stringify()用于从一个对象解析出字符串
先上代码:
function addInToRoom(){ var userID = $('#userID').val(); var passWord = $('#passWord').val(); var IpAddr = $('#IpAddr').val(); var IpPort = $('#IpPort').val(); var host = "ws://"+IpAddr+":"+IpPort+"/ws"; var jsonData = {}; jsonData.MainCmdID = 1; jsonData.SubCmdID = 2; jsonData.userID = 1; jsonData.passWord = hex_md5(passWord); toStr = JSON.stringify(jsonData); OutPutLog(toStr); //alert(toStr); try{ socket = new WebSocket(host); OutPutLog('Socket Status: '+socket.readyState); socket.onopen = function(){ var myData = new Date(); OutPutLog(myData.toLocaleString()+'Socket Status: '+socket.readyState+'(open)'); socket.send(toStr); } socket.onmessage = function(msg){ var myData = new Date(); OutPutLog("msg:"+msg); OutPutLog("msg.data:"+msg.data); var jsonData = JSON.parse(msg.data); var jsonObj = JSON.stringify(msg.data); OutPutLog("JSON.parse(msg.data):"+jsonData.MainCmdID); OutPutLog("JSON.parse(msg.data):"+jsonData["MainCmdID"]);//推荐用此 //OutPutLog("JSON.stringify(msg.data):"+jsonObj); OutPutLog(myData.toLocaleString()+":JSON.stringify(msg.data):"+jsonObj); var parseJsonObj = JSON.parse(jsonObj); OutPutLog("Json.parse(Json.stringify(msg.data)):"+parseJsonObj); } socket.onclose = function(){ var myData = new Date(); OutPutLog(myData.toLocaleString()+'Socket Status: '+socket.readyState+' (Close)'); } }catch(exception){ OutPutLog('Error' + exception); } }
结果:
结果:
{"MainCmdID":1,"SubCmdID":2,"userID":1,"passWord":"96e79218965eb72c92a549dd5a330112"}
Socket Status: 0
2015/7/23 下午8:49:31Socket Status: 1(open)
msg:[object MessageEvent]
msg.data:{ "ErrorCode" : 1,"MainCmdID" : 1,"SubCmdID" : 101,"location" : "LogonServer" }
JSON.parse(msg.data):1
JSON.parse(msg.data):1
2015/7/23 下午8:49:31:JSON.stringify(msg.data):"{n "ErrorCode" : 1,n "MainCmdID" : 1,n "SubCmdID" : 101,n "location" : "LogonServer"n}n"
Json.parse(Json.stringify(msg.data)):{ "ErrorCode" : 1,"location" : "LogonServer" } (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|