通过网页连接telnet
Connect to telnet via webpage
我是 telnet 和套接字的新手,现在我对它的概念一头雾水。所以我可以在这里得到一些帮助。
到目前为止,我已经使用 Node.js 的 包 net 创建了一个简单的 telnet 服务器。这是其中的一小段,
function newSocket(socket) {
sockets.push(socket);
console.log('A new telnet connection!\n');
socket.on('data', function(data) {
});
socket.on('end', function() {
console.log('A Telnet socket disconnected!\n');
});
}
var telnetServer = net.createServer(newSocket);
telnetServer.listen(8080);
使用命令
完美运行
telnet localhost 8080
而且我知道我可以使用 NodeJS 的 net 包连接到它,就像这样
var client = net.connect({port: port}, function() {
console.log('client connected');
client.write('data!\r\n');
});
所以,我想做的是从我的客户端应用程序 (AngularJS) 连接到此 telnet 服务器,如果可能的话。
我知道如何使用 $websocket 服务从 AngularJS 应用程序连接到网络套接字,像这样,
$websocket.$new({
url: websocketUrl,
protocols: [],
subprotocols: ['base46'],
reconnect: true,
reconnectInterval: 500
});
所以,我的问题是:
- 我可以从客户端连接到 telnet 服务器吗?我的意思是甚至可以像我们使用网络套接字一样从网络浏览器连接到 telnet 吗?
- 如果是,你能给我看一些片段吗?
- 网络套接字是否比 Telnet 更好?
我知道这些问题听起来很愚蠢,但就像我说的那样,我刚刚开始深入研究这些问题。
谢谢你的时间。
在网上查阅了各种文档后,我得到了答案。由于还没有答案(截至撰写本文时),我正在发布我自己找到的答案。
首先回答我的问题
Can I connect to telnet server from client-side? I mean is it even
possible to connect to telnet from web browser like we do with
web-sockets?
不,telnet 是服务器协议,不是客户端和服务器之间的某种通信方式。这是我最大的困惑,促使我在这里问这个问题。
If yes, can you show me some kind of snippet for that?
嗯,我们不能,所以没有片段。
Are web-sockets are better option than Telnet?
两者不同,所以没有比较。
解决方案
所以我所做的是,我使用了
- 一个托管telnet的服务器(telnet服务器)
- 另一个网络套接字服务器(telnet 客户端)
- 客户端(网络视图)
所以通过这种方法,我在 telnet 和 websockets 之间建立了连接(我首先需要它),两者都是托管在不同的服务器上,正在侦听网络套接字的服务器充当 telnet 客户端。
我是 telnet 和套接字的新手,现在我对它的概念一头雾水。所以我可以在这里得到一些帮助。
到目前为止,我已经使用 Node.js 的 包 net 创建了一个简单的 telnet 服务器。这是其中的一小段,
function newSocket(socket) {
sockets.push(socket);
console.log('A new telnet connection!\n');
socket.on('data', function(data) {
});
socket.on('end', function() {
console.log('A Telnet socket disconnected!\n');
});
}
var telnetServer = net.createServer(newSocket);
telnetServer.listen(8080);
使用命令
完美运行telnet localhost 8080
而且我知道我可以使用 NodeJS 的 net 包连接到它,就像这样
var client = net.connect({port: port}, function() {
console.log('client connected');
client.write('data!\r\n');
});
所以,我想做的是从我的客户端应用程序 (AngularJS) 连接到此 telnet 服务器,如果可能的话。
我知道如何使用 $websocket 服务从 AngularJS 应用程序连接到网络套接字,像这样,
$websocket.$new({
url: websocketUrl,
protocols: [],
subprotocols: ['base46'],
reconnect: true,
reconnectInterval: 500
});
所以,我的问题是:
- 我可以从客户端连接到 telnet 服务器吗?我的意思是甚至可以像我们使用网络套接字一样从网络浏览器连接到 telnet 吗?
- 如果是,你能给我看一些片段吗?
- 网络套接字是否比 Telnet 更好?
我知道这些问题听起来很愚蠢,但就像我说的那样,我刚刚开始深入研究这些问题。 谢谢你的时间。
在网上查阅了各种文档后,我得到了答案。由于还没有答案(截至撰写本文时),我正在发布我自己找到的答案。
首先回答我的问题
Can I connect to telnet server from client-side? I mean is it even possible to connect to telnet from web browser like we do with web-sockets?
不,telnet 是服务器协议,不是客户端和服务器之间的某种通信方式。这是我最大的困惑,促使我在这里问这个问题。
If yes, can you show me some kind of snippet for that?
嗯,我们不能,所以没有片段。
Are web-sockets are better option than Telnet?
两者不同,所以没有比较。
解决方案
所以我所做的是,我使用了
- 一个托管telnet的服务器(telnet服务器)
- 另一个网络套接字服务器(telnet 客户端)
- 客户端(网络视图)
所以通过这种方法,我在 telnet 和 websockets 之间建立了连接(我首先需要它),两者都是托管在不同的服务器上,正在侦听网络套接字的服务器充当 telnet 客户端。