gpt4 book ai didi

javascript - 与nodejs的数据和字符串比较

转载 作者:搜寻专家 更新时间:2023-10-31 23:28:20 25 4
gpt4 key购买 nike

我是 node.js 的初学者,我愿意创建一个 TCP 服务器,它会根据接收到的内容给我不同的答案。

这是服务器端:

<p></p>

<pre><code>var net = require('net');

var server = net.createServer(function(c) {
console.log('socket opened');
c.setEncoding('utf8');
c.on('end', function() {
console.log('connection/socket closed');
});
c.on('data', function(data) {
console.log('Data:'+data);
if(data.toString() == "open"){
c.write('Answer: opened');
}else if(data.toString() === "add"){
c.write('Answer: added');
}else if(data.toString() === "process"){
c.write('Answer: processed');
}
});
});

server.listen(8080, function() { // start server (port 8080)
console.log('server started');
});
</code></pre>

<p></p>
我只是使用 telnet 来尝试查看我的代码是否正常工作。基本上,如果我向他发送“打开”,我希望服务器回答“打开”,如果我发送“添加”,则服务器回答“添加”...我不知道为什么,但它不会工作。我已经尝试了一个小时,我确信这一定是我犯的一些简单错误,但现在我看不到任何会导致这个简单的回显服务器无法正常工作的东西。

最佳答案

我知道是晚些时候,但有更好的答案,我用谷歌搜索发现了一个类似的问题。这是我的 2 美分。

要正确捕获所有案例(而不仅仅是针对这个案例的怪癖),您应该只使用 trim()方法

if (data.toString().trim() === 'open') {
//...
}

关于javascript - 与nodejs的数据和字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22186481/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com