我是节点的新手,我正在尝试使用网络库通过套接字发送数据,我基本上想要按下按钮发送数据,按下按钮,http请求被发送到服务器并响应它看起来像这样
app.get('/clientmessageaction/:name',function(req,res){
var name=req.params.name;
var index=clientNameArray.indexOf(name); //getting the index of the name for the socket
if(index>=0) //check if socket with that name exists
{
socketArray[index].on('connect',function(){
socketArray[index].write("server says hello!");
});
}
else {
console.log("no client found ");
}
});
当客户端发送消息“我是客户端”时,我将套接字保存在数组中。
server.on('connection',function(socket){
socket.on('data',function(data){
var dat=data.toString();
var substr=dat.substr(0,7);
socket.write("hello socket");
if(substr=="i am client")
{
addSocket(socket,clientname);
});
}
});
socket.on('end', function() //whenever client is disconnected
{
removeSocket(socket,clientname);
});
});
所以这里遇到的问题是每当发出http请求时(即触发第一个代码块时)我都会收到错误, 错误表明.on,.write被调用并且那些函数不存在,其中这些函数在第二个代码块中工作。 到目前为止(在使用几小时的代码安装之后).on和.write仅适用于server.on函数。 但是我想在发出http请求时发送数据(即从前端按下按钮)
请帮忙 谢谢!