关于Socket(telnet)(websocket)远程连接的疑问

大家好!
目前小弟在做一个连接远程控制台读取返回信息输出页面的小程序(可以称之为游戏服务端控制台那种),
连接控制台信息: 远程端口、ip、密码

描述:

1.websocket
1.1这种js里面直接用ws协议连接ws://localhost:本地端口/"+ip+"/"+port+"/"+passwd这样连接会握手失败,由于没去看过源码,暂且判定为是因为(连接控制台第一件事是输入密码登陆这个我不知道他会不会自动发送密码先登录然后接受信息)
1.2,由于上一种方法行不通,那我就用ws协议请求java项目里面的websocket,在用socket连接远程,这样连接控制台然后手动发送密码,在读取控制台一直返回的信息,但是这里遇到一个问题,服务端是一直返回信息的,代码里面就得用循环读取,然后在里面吧信息推送至前台页面显示,虽然能正常发送命令接受信息,
1.3,用telnet客户端,一样是因为阻塞到问题2

问题:
由于连接是需要长连接的
1.会偶尔不定时没接受到消息就丢失连接,(这个定时发送心跳包貌似是一种解决办法)
2.我用的是readLine读取数据,这里就会阻塞,页面需要发送命令(同一个流发送)的话后台无法接收到,会一直阻塞到循环读取哪里

希望有想法的各位给点建议或思路或方向。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
WebSocket可以和Socket建立连接吗

我一个项目用的是Socket,最近要新建一个项目想用WebSocket,这两个项目能建立连接吗

Socket和WebSocket谁的性能高

现在想做个小网络游戏(unityC#,逻辑简单,但是并发大),纠结于用Socket还是WebSocket,求大神指点~从性能和最大并发分析...最好能再推荐几个对应的高并发框架,感激不尽!!!

netty或java如何同时提供socket和websocket服务??急求方法和代码

netty或java如何同时提供socket和websocket服务??急求方法和代码

Websocket:无法与基本websocket服务器建立连接

<div class="post-text" itemprop="text"> <p>I've tried very basic websocket tutorial using ratchet php, exactly as shown in <a href="http://socketo.me/docs/hello-world" rel="nofollow">http://socketo.me/docs/hello-world</a></p> <p>Code for websocket server:</p> <pre><code>&lt;?php error_reporting(E_ALL); ini_set('display_errors', '1'); require 'vendor/autoload.php'; require 'chat.php'; use Ratchet\Server\IoServer; use HHWS\Chat; $server = IoServer::factory( new Chat(), 8080 ); $server-&gt;run(); </code></pre> <p>To run the server I did:</p> <pre><code>$ php ws-server.php </code></pre> <p>And to test the connection with the server I did:</p> <pre><code>telnet 127.0.0.1 8080 </code></pre> <p>This worked perfectly fine when tested LOCALLY. Users can chat using multiple telnet terminals. </p> <p>I then uploaded the code to live server. And the tried running the server. Then tried to connect to this server using telnet just like before, it couldn't connect. All it shows is "Trying.." message and then " Unable to connect to remote host: Connection timed out".</p> <p>I don't know why this is happening, and what the problem is. The code is exactly the same. And this is very basic hello world example I'm doing. Can anyone help me on this. Do using "Websockets" have any other requirements on the live server to work. </p> <p><strong>Update:</strong> Actually, the live server is <strong>Amazon EC2</strong>; does this require setting up additional things for websocket to work?</p> </div>

websocket能不能代替socket

目前正在做一个简单的智能灯控系统,属于物联网方面的东西,需要用网页来控制,本人的想法就是后台使用java ,利用socket实现本地控制!但是领导是一个非技术人员,他就不想用到后台,直接利用静态网页来实现!不知道这样能不能实现,websocket能不能跟socket一样用,原理上是不是可行的!html跟js联合有没有办法实现socket通信?

(html5)websocket 拒绝连接

网页用的是websocket; 后台调用一个封装好的dll; (该dll用csharp的socket来处理客户端的websocket相关的行为) 当客户端向后台请求连接时报错了—— WebSocket connection to 'ws://192.168.200.58:9050/' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED 在没做成dll之前,两者之间能够正常通信,做成dll之后才出问题的。 求问到底是什么原因?

Websocket无法连接但不能抛出异常

<div class="post-text" itemprop="text"> <p>Trying to create a connection with websocket in JS to PHP server, can't connect to the server but no exception thrown</p> <p><strong>JS</strong></p> <pre><code>try { var socket; var host = "ws://www.somecoolsite.com:9080/test.php"; var socket = new WebSocket(host); console.log("opening socket..."); socket.onopen = function () { console.log('Socket Status: ' + socket.readyState + ' (open)'); socket.send("2"); console.log("sent first package"); } socket.onconsole.log = function (msg) { console.log('Received: ' + msg.data); } socket.onclose = function () { console.log('Socket Status: ' + socket.readyState + ' (Closed)'); } } catch (exception) { console.log('Error' + exception); } </code></pre> <p><strong>PHP on somecoolsite</strong></p> <pre><code>$server = stream_socket_server("tcp://localhost:9080", $errno, $errorMessage); if ($server === false) { throw new UnexpectedValueException("Could not bind to socket: $errorMessage"); } else { echo "Working"; } for (;;) { $client = @stream_socket_accept($server); if ($client) { stream_copy_to_stream($client, $client); fclose($client); } } </code></pre> <p>I'm stuck with this entire day, can't establish socket connection. Anyone has an idea what can be the problem here?</p> </div>

WebSocket客户端与Java的Socket服务器通信

客户端使用websocket,服务器使用Java Socket。客户端经过new webSocket(utl)之后,服务器端可以收到请求头,但是客户端的webSocket.readyState一直是0,没有连接成功,这个是因为什么呢?是不是因为服务器端不可以用Java Socket

连接到WebSocket-通过socket.io设置-不使用socket.io

<div class="post-text" itemprop="text"> <p>I'm trying to connect to <code>wss://streamer.cryptocompare.com</code> from <a href="https://www.cryptocompare.com/api#-api-web-socket-" rel="nofollow noreferrer">cryptocompare.com</a>, using the go gorilla lib. </p> <p>Is it just me, or isn't this possible? They're using socket.io as their backend.</p> </div>

如何使用websocket通过ip地址从远程PC连接到Web服务器

<div class="post-text" itemprop="text"> <p>I followed <a href="https://www.flynsarmy.com/2012/02/php-websocket-chat-application-2-0/" rel="nofollow">this tutorial</a> to create a Websocket chat example with PHP.</p> <p>It works well on localhost but when I try to connect the server from another computer it does not connect. I tried changing the start server IP to my LAN ipv4 address but it did not work. When I tried to use my external IP, the server did not start with the error:</p> <blockquote> <p>Warning: socket_bind(): unable to bind address [10049]: The requested address is not valid in its context.</p> </blockquote> <p>Is there any way to connect from another client to the server running in my LAN IP address or external IP address?</p> </div>

websocket client执行socket_write 就断开连接

php 充当websocket客户端,模拟向服务器端发消息,但是一执行socket_write连接就丢失了。 是因为php是短连接吗?我在服务端有监控发送的消息,没有收到消息。 代码: $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); $result = socket_connect($socket, '********', ***); echo $result."\n"; echo "Send Command..........\n"; $msg = 'test msg'; socket_write($socket, $msg, strlen($msg)); echo "OK\n"; echo "Reading Backinformatin:\n\n"; while ($out = socket_read($socket, 2048)) { echo $out." out\n"; } echo "Close socket........\n"; //socket_close($socket); echo "OK,He He.\n\n";

WebSocket无法建立连接问题

同样的websocket地址,一台电脑可以建立连接,另一台电脑就无法建立连接,这种情况和电脑开了代理有关,还是有什么其他的问题?

python Socket模拟WebSocket接收数据问题

按照WebSocket协议对数据进行解析,解析出来的数据不正确,还是乱码,求大神指导问题出在哪,代码如下: ``` def decode(self,data): if not len(data): return False length = data[1] & 0x7F if length == 0x7E: mask = data[4:8] raw = data[8:] elif length == 0x7F: mask = data[10:14] raw = data[14:] else: mask = data[2:6] raw = data[6:] ret = bytes() for cnt, d in enumerate(raw): ret += bytes((d ^ mask[cnt % 4],)) return ret ``` 抓包工具看到的原始数据为: ``` c1 a8 c8 6f 51 b8 62 39 1e f6 e4 3f e6 ea ff db 65 8a 60 5f 65 08 f8 bf 66 e8 1f 3e 7e f5 01 23 50 b2 92 75 75 9f d2 4a 4a e3 60 b8 53 b8 ``` 实际发送的数据为: ``` {'cap':'1920x1080/0','udid':'90ca2c38'} ``` 调试看到的数据如下图: ![图片说明](https://img-ask.csdn.net/upload/201801/16/1516092073_44289.png)

多个页签共享一个Websocket长连接实现

本人最近做一个需求,需要涉及同一个浏览器多个页签共享一个Websocket长连接实现方案,有相关经验大神给予指点?

WebSocket如何跟一般的java Socket进行通信

我用一般的java Socket写了一个Swing桌面程序,可以实现两个桌面客户端的通讯。现在想把客户端用网页的形式展现,js里就需要用到WebSocket,但是在跟之前写的服务器端Socket握手后就报错:WebSocket connection to 'ws://localhost:6789/' failed: Error during WebSocket handshake: Invalid status line 请问如何实现WebSocket和桌面Socket的通信? 必须用javaWeb里的东西么? 谢谢

通过消息关闭Websocket连接

<div class="post-text" itemprop="text"> <p>How is it possible to close a websocket connection and pass it a message / code?</p> <p>The docs only define <code>func (ws *Conn) Close() error</code> without any arguments</p> <p>I would like to receive the event from JavaScript like this:</p> <pre><code>websocket.onclose = function(event) { console.log(event); }; </code></pre> <p>I am using <a href="https://godoc.org/golang.org/x/net/websocket" rel="nofollow">golang.org/x/net/websocket</a></p> </div>

WebSocket服务端怎么储存连接对象

WebSocket实现了客服端和服务端的双向通信,当存在大量连接时,服务端是通过什么 方式来储存连接的,hashmap,链表还是数组,还是其它什么方式?

求助!websocket连接后端一直不返回连接成功

前端 let wsuri= global.wsURL+"/slims/v1/websocket/"; if ("WebSocket" in window) { console.log("您的浏览器支持查看在线人数") } else { alert('当前浏览器不支持查看人员在线状态'); } this.websockt = new WebSocket(wsuri); this.websockt.onmessage = this.websocketonmessage; this.websockt.onerror = this.websocketonerror; this.websockt.onclose = this.websocketclose; this.websockt.onopen =this.websocketonopen; // Web Socket 已连接上,使用 send() 方法发送数据s console.log('数据发送中...') this.websockt.send('Holle') console.log('数据发送完成') } this.websockt.send = this.websocketsend; }, websocketonopen(){ //连接建立之后执行send方法发送数据 console.log("xxxx"); }, websocketonerror(){//连接建立失败重连 console.log("重新连接") this.initWebSocket(); }, websocketonmessage(e){ //数据接收 console.log("数据接收") }, websocketsend(Data){//数据发送 console.log("数据发送"); this.websockt .send("幸福9999");debugger alert(8888); }, websocketclose(e){//关闭连接 console.log("关闭连接") this.websockt.onclose(); }, }, 后台 : @OnOpen public void onOpen(Session session, EndpointConfig sce) throws IOException { this.session = session; //Object转换成Long Long uuid = Long.valueOf(String.valueOf(sce.getUserProperties().get("uuid"))); if (null == uuid) { onClose(); } webSocketSet.add(this); //线程安全的原子数+1 subOnlineCount(); System.out.println("有链接加入,当前人数为:" + getOnline_num()); this.session.getAsyncRemote().sendText("有链接加入,当前人数为:" + getOnline_num()); map.put(session, uuid); System.out.println("当前登录人uid" + uuid); String stats = "0"; //是首次登陆的人 if (0 == userSocketService.list(Condition.create().eq("uid", uuid)).size()) { UserSocket usersocket = new UserSocket(); usersocket.setUid(uuid); usersocket.setStats(stats); usersocket.setCompany_id(0L); userSocketService.saves(usersocket); } else { UserSocket usersocket = new UserSocket(); usersocket.setUid(uuid); usersocket.setStats("0"); userSocketService.update(usersocket, Condition.create().eq("uid", uuid)); } sendMessage("------------------------后台-----) 可以连接上,但是没法发消息,正常这里应该显示状态码是101的,但是一直显示在链接中明明后台已经收到请求了,到底是怎么回事呢? ![图片说明](https://img-ask.csdn.net/upload/201810/17/1539757022_269768.png)

js websocket长连接刷新页面问题

描述: 需要做一个填写连接信息然后连接服务端接收服务端的反馈信息显示,后续客户端不定时的发送数据给服务端,连接就必须是一个长连接了, 问题: 由于需要的是一个长连接,刷新页面的同时如何保存当前这个连接 其他地方如何保证使用到的是同一个连接 维持长连接这个应该可以发送心跳包解决

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

再不跳槽,应届毕业生拿的都比我多了!

跳槽几乎是每个人职业生涯的一部分,很多HR说“三年两跳”已经是一个跳槽频繁与否的阈值了,可为什么市面上有很多程序员不到一年就跳槽呢?他们不担心影响履历吗? PayScale之前发布的**《员工最短任期公司排行榜》中,两家码农大厂Amazon和Google**,以1年和1.1年的员工任期中位数分列第二、第四名。 PayScale:员工最短任期公司排行榜 意外的是,任期中位数极小的这两家公司,薪资...

我以为我学懂了数据结构,直到看了这个导图才发现,我错了

数据结构与算法思维导图

数据库——玩转SQL语句(以MySQL为例)

一、前言 照着大学的SQL server来学

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

华为初面+综合面试(Java技术面)附上面试题

华为面试整体流程大致分为笔试,性格测试,面试,综合面试,回学校等结果。笔试来说,华为的难度较中等,选择题难度和网易腾讯差不多。最后的代码题,相比下来就简单很多,一共3道题目,前2题很容易就AC,题目已经记不太清楚,不过难度确实不大。最后一题最后提交的代码过了75%的样例,一直没有发现剩下的25%可能存在什么坑。 笔试部分太久远,我就不怎么回忆了。直接将面试。 面试 如果说腾讯的面试是挥金如土...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

讲一个程序员如何副业月赚三万的真实故事

loonggg读完需要3分钟速读仅需 1 分钟大家好,我是你们的校长。我之前讲过,这年头,只要肯动脑,肯行动,程序员凭借自己的技术,赚钱的方式还是有很多种的。仅仅靠在公司出卖自己的劳动时...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

程序员写出这样的代码,能不挨骂吗?

当你换槽填坑时,面对一个新的环境。能够快速熟练,上手实现业务需求是关键。但是,哪些因素会影响你快速上手呢?是原有代码写的不够好?还是注释写的不够好?昨夜...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

HTTP与HTTPS的区别

面试官问HTTP与HTTPS的区别,我这样回答让他竖起大拇指!

程序员毕业去大公司好还是小公司好?

虽然大公司并不是人人都能进,但我仍建议还未毕业的同学,尽力地通过校招向大公司挤,但凡挤进去,你这一生会容易很多。 大公司哪里好?没能进大公司怎么办?答案都在这里了,记得帮我点赞哦。 目录: 技术氛围 内部晋升与跳槽 啥也没学会,公司倒闭了? 不同的人脉圈,注定会有不同的结果 没能去大厂怎么办? 一、技术氛围 纵观整个程序员技术领域,哪个在行业有所名气的大牛,不是在大厂? 而且众所...

程序员为什么千万不要瞎努力?

本文作者用对比非常鲜明的两个开发团队的故事,讲解了敏捷开发之道 —— 如果你的团队缺乏统一标准的环境,那么即使勤劳努力,不仅会极其耗时而且成果甚微,使用...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

终于懂了TCP和UDP协议区别

终于懂了TCP和UDP协议区别

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《C语言函数速查》main()主函数

每一个C程序都必须有一main()函数, 可以根据自己的爱好把它放在程序的某个地方。有些程序员把它放在最前面, 而另一些程序员把它放在最后面, 无论放在哪个地方, 以下几点说明都是适合的。

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

立即提问
相关内容推荐