socket.io를 사용하는 Node.js 프로젝트가 있습니다. 그것에서는,이 같은 클라이언트에서 서버로 객체를 전송하려고 : socket.send(JSON.stringify({'type':'msg','message':'test'}));
JSON이 제대로 직렬화되지 않는다고 생각합니다.
가 서버에 도착 , 나는 그것에 JSON.parse
를 호출 object.type == 'msg'
있는지 확인하세요. 코드를 실행하고 console.log(object.type)
을 호출하면 "msg"
을 반환하지만 object.type == 'msg'
은 false를 반환합니다. 무슨 일 이니?
편집 :
실패 코드의 관련 부분은 다음과 같습니다
client.on('message', function(message, client){
var envelope = JSON.parse(message);
console.log(envelope.type);
if(envelope.type == "msg") { console.log("yay!"); }
}
메시지가 들어올 때마다
는msg
는
yay!
인쇄,하지만하지 않습니다.
당신은 우리에게 보여줄 수 귀하의 서버 코드의 일부? 지금 당장 나는 이것이 실패하는 이유를 생각할 수 없다. –
당신은 "... msg, ...를 반환합니다."대신 msg *가있는 객체를 반환하지 않아야합니까? – Christian
@Ivo @Christian Clarified. –