由于工作的一些原因要使用不通过请求来使网页和桌面程序之间相互发送消息,想来想去还是用websocket之前也百度过一些其他的方法但发现有限制系统问题就给抛弃了。

websoket利用本地电脑的端口来使网页和桌面程序通信,桌面程序设置为服务端,网页设置为客户端。

下载插件:https://download.csdn.net/download/qq_35319925/10231896

               List<IWebSocketConnection> allSockets;WebSocketServer server;    //创建服务器FleckLog.Level = LogLevel.Debug;allSockets = new List<IWebSocketConnection>();server = new WebSocketServer("ws://0.0.0.0:7182");//设置ip和端口号(端口号是本地电脑的端口号通讯时其他电脑不能参与通信)server.Start(socket =>{socket.OnOpen = () =>{allSockets.Add(socket);//打开通讯};socket.OnClose = () =>{allSockets.Remove(socket);//关闭通讯};socket.OnMessage = message =>{allSockets.ToList().ForEach(ss => ss.Send(message));//接收的消息};});//发送消息var input = "hello world";foreach (var socket in allSockets.ToList()){socket.Send(input);}

创建客户端程序

 <script type="text/javascript">var start = function () {var inc = document.getElementById('incomming');var wsImpl = window.WebSocket || window.MozWebSocket;var form = document.getElementById('sendForm');var input = document.getElementById('sendText');inc.innerHTML += "connecting to server ..<br/>";// create a new websocket and connect  localhostwindow.ws = new wsImpl('ws://localhost:7182/');//ip、端口号和服务端一致// when data is comming from the server, this metod is calledws.onmessage = function (evt) {inc.innerHTML += evt.data + '<br/>';//接收服务器消息};// when the connection is established, this method is calledws.onopen = function () {inc.innerHTML += '.. connection open<br/>';//打开通讯};// when the connection is closed, this method is calledws.onclose = function () {inc.innerHTML += '.. connection closed<br/>';//关闭通讯}form.addEventListener('submit', function (e) {  //.. connection closede.preventDefault();var val = input.value;ws.send(val);//客户端向服务端发送消息input.value = "";document.getElementById("i").src = "";});}window.onload = start;</script><form id="sendForm"><input id="sendText" placeholder="Text to send" /><img src="" id="i" /></form><pre id="incomming"></pre>

websocket网页与客户端通信相关推荐

  1. javascript python 通信_Python通过websocket与js客户端通信示例分析

    具体的 websocket 介绍可见 http://zh.wikipedia.org/wiki/WebSocket 这里,介绍如何使用 Python 与前端 js 进行通信. websocket 使用 ...

  2. java h5获取ip,websocket中获取客户端通信的真实IP

    一些场景中,我们要对websocket客户端的ip进行校验,如果是黑名单,或者不被允许的则不应该让他访问业务系统. 笔者本地使用了两个Websocket技术原型,一个基于Netty封装的Websock ...

  3. websocket性能低?教你使用netty整合websocket(二)——实现点对点聊天(客户端与客户端通信)

    前提 了解如何实现客户端和服务端通讯 上一篇博客--SpringBoot+Netty整合websocket(一)--客户端和服务端通讯 实现点对点聊天 后端 1.建立服务端WebSocketNetty ...

  4. Websocket服务端和客户端通信(WSS、WS)

    前端和后端之间的通讯 一.简介 前端为客户端(Client),后端为服务端(Server) 具体操作步骤为: 1.运行 Server 目录下的 --> WebsocketServerWss_Ws ...

  5. qt通过websocket和html通信,QT Websocket实现服务器客户端通讯(服务端部分)

    接上文QT Websocket实现服务器客户端通讯(客户端部分)web https://blog.csdn.net/qq_39573345/article/details/80682232 服务器 S ...

  6. Spring之WebSocket网页聊天以及服务器推送

    Spring之WebSocket网页聊天以及服务器推送 转自:http://www.xdemo.org/spring-websocket-comet/ /Springframework /Spring ...

  7. websocket 更新点位 浏览器卡顿_我们来看看Swoole是如何实现WebSocket服务器及客户端的...

    php自学中心 2019-11-08 10:25:30 文章来自:laravel学院WebSocket 概述 在此之前,有必要对 WebSocket 的原理做简单的说明,WebSocket 复用了 H ...

  8. 如何使用websocket实现前后端通信

    如何使用websocket实现前后端通信 websocket通信是很好玩的,也很有用的的通信方式,使用方式如下: 第一步由于springboot很好地集成了websocket,所以先在在pom.xml ...

  9. 安卓学习笔记39:浏览网页、网页与安卓通信

    文章目录 零.学习目标 一.Intent十二种常用功能 1.浏览网页 2.浏览地图 3.调出拨打电话界面 4.直接拨打电话 5.卸载应用程序 6.安装应用程序 7.播放存储卡音乐 8.调用发邮件 9. ...

最新文章

  1. LabVIEW图像灰度测量(基础篇—7)
  2. UNIX网络编程--ioctl操作(十七)
  3. linux shell ls -l,linux之ls -l|grep ^-|wc -l命令 Shell 中常見的日志統計方法
  4. oracle插入性能优化,Oracle-insert性能优化
  5. java -锁(公平、非公平锁、可重入锁【递归锁】、自旋锁)
  6. 微信小程序 环形进度条_微信小程序:实时圆形进度条实现
  7. 【杂谈】excel列表创建后,怎么删除蓝色边框线?
  8. 浅谈TCP/IP网络编程中socket的行为
  9. CMU 15-213 Introduction to Computer Systems学习笔记(21) Synchronization: Basic
  10. 从应用工程师的角度再谈车载 Android 系统
  11. Qt信号与槽机制详解
  12. antd组件英文改中文
  13. 微信小程序对接大华摄像头
  14. 考研:研究生考试(一天学完)之【英语考试】之研究生学霸重点知识点总结之英语小作文模板总结(通知、书信-建议信/邀请信/道歉信/辞职信/请求信/推荐信)、英语大作文模板总结(三段论)
  15. 代码高处走 从VC6到VC9移植代码问题说明
  16. 无法打开包括文件SDKDDKVer.h
  17. mac居家办公怎么连接公司内网
  18. 【项目实战经验】电商系统常用数据结构
  19. work steal and overpartition
  20. 你还在纠结PMP的含金量问题吗

热门文章

  1. 曲阜师范大学计算机科学院为什么拆分,曲阜师范大学计算机科学学院导师介绍:禹继国...
  2. python语言程序设计微课版_《Python语言程序设计(微课版)》【摘要 书评 试读】- 京东图书...
  3. JS学习日志15 -- JS基础--忍者代码
  4. DDoS 攻击与防护(二):DDoS 防护购买和使用入门指南,DDoS 防护服务有哪些应用场景?
  5. [附源码]计算机毕业设计共享汽车系统
  6. android 变量onchange,Android内容查看器-onChange方法检查上一个呼...
  7. 大学生笔记本电脑推荐性价比高2022 大学生笔记本电脑买多大尺寸的好 2022
  8. cifs 文件服务器,使用SMB/CIFS做文件服务器
  9. oracle数据库dcl,Oracle的DML、DDL、DCL详解
  10. 13.Elasticsearch 7.15 Query DSL 之 term查询、terms查询和terms set查询