`
nicegege
  • 浏览: 589409 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

学习jsSocket实现后台向前台发送实时消息

阅读更多

之前在做客户管理系统的时候,客户经常给我们提出实施通讯的需求。当时,我们讨论出的方案是客户端间隔时间发送请求,访问服务器的应用,如果状态改变,则弹出消息给用户显示。

今天,在隐心技术论坛上发现一片帖子,作者是高手,使用js+flex+java开发实施通信socket。

Js+Flex+Java模拟的JsSocket组件使用说明

说明:图片、附件都需要登陆才能查看和下载,若没有注册请先注册账号再登陆即可。

JsSocket

      演示地址1    演示地址2    隐聊 <----
    应大家要求,现已将演示项目“隐聊”开源共享,代码共享地址:
    TaoCode svnhttp://code.taobao.org/svn/yisin-webchat/  若没有账号,请自己去注册。
开源中国OSC svn:

  1. svn://git.oschina.net/yisin/webchat
复制代码



JsSocket 是使用js + flex + java开发的一套基于websocket通信组件,开发服务器消息推送的最佳选择

主要解决大家在开发web项目时需要用到前台与后台时时通信时的问题,除了HTML5WebSocket之外,之前大家使用的方法一般为:1、页面间断刷新;2、使用ajax间断发送请求;3、使用DWR框架的comet长连接模拟实现,缺点大家都心知肚明

最新的HTML5WebSocket,虽然很好的解决了这一问题,但IE9及以下版本不兼容HTML5,即不能使用WebSocket来达到目的,本组件因使用的 js + flex,几乎可以兼容所有浏览器,具体使用方法如下介绍

一、后台:

1、导入jar包:JsSocket.jar

2、写一个类SocketClient.java继承 com.yinsin.method.CallBack.java类,此类主要是用来处理客户端收发请求的,示例代码如下:

在这3个方法当中可以做你任何想做的事情

3、可以在web服务启动时,开启JsSocket服务:

a.web.xml中配置web服务启动监听器

<listener>

<listener-class>com.yinsin.frame.init.InitCustomData</listener-class>

</listener>

b.InitCustomDatacontextInitialized方法中开启JsSocket服务

/** 接收两个参数,第1个参数未端口,第2个参数为CallBack.java的子类 */

TcpServerSocket.getInstance().startServer(10000,new SocketClient());

4、最后启动web服务,若控制台输出了“JsSocket # TCP Socket Server Started!”,即代表完成了搭建JsSocket的后台服务了。

 

二、前端

1、将所需要的flash资源文件导入到项目中,目录结构为:script/JsSocket/JsSocket.swfscript/JsSocket/playerProductInstall.swf,将此目录放到WebContent或者WebRoot下即可。

2、需要用到JsSocket的页面需要加载下组件所需要的代码:

<span><%=com.yinsin.util.CodeLoader.loaderCode(request.getContextPath())
%></span>

3js调用初始化函数,初始化组件,连接服务器:

4、向服务器发送消息:

yinsin.sendData('Hello World!');



5、服务器向前端推送消息(补充):
      sendDataToClient(Socket, String);
    在SocketClient类中,调用此方法即可

 

本文章是转载文章,原文在隐心技术论坛http://yisin.88448.com/viewthread.php?tid=39949

分享到:
评论

相关推荐

    JsSocket,JS+FLEX+JAVA模拟的Js Soclet

    主要解决大家在开发web项目时需要用到前台与后台时时通信时的问题,除了HTML5的WebSocket之外,之前大家使用的方法一般为:1、页面间断刷新;2、使用ajax间断发送请求;3、使用DWR框架的comet长连接模拟实现,缺点...

    Node.js-WebSSH2基于Web的SSH2客户端使用xterm.jssocket.io和ssh2实现

    在本项目中,"Node.js-WebSSH2基于Web的SSH2客户端使用xterm.js、socket.io和ssh2实现",我们关注的是构建一个在浏览器环境中运行的SSH2客户端。这个客户端允许用户通过Web界面安全地连接到远程服务器执行命令,从而...

    jssocket

    jssocket

    jssocket,js通过flash使用socket通信

    jssocket,js通过flash使用socket通信

    twsited 学习的第一个完整程序

    在描述中提到了一个博文链接,虽然具体内容没有提供,但通常这类博客会包含作者学习过程的记录,包括代码实现、遇到的问题和解决方案,这对于其他初学者来说是一个很好的参考资料。通过访问该链接(),你可以获取更...

    利用socket传SWF到Flash

    在这个FLA文件中,你需要导入`nocache.as` 类,并在适当的时间触发建立Socket连接、发送请求和接收SWF数据的代码。 `com.rar` 文件是一个压缩包,可能包含了与这个项目相关的其他类库或者辅助资源。RAR是一种常见的...

    obsess-node:将交互式安装连接到互联网的 RPi 项目。 使用 RPi (node.jsexpress.jssocket.iofirmate) 连接到 arduino

    **标题解析:** "obsess-node" 是一个项目,它旨在通过 Raspberry Pi(简称 RPi)使用 Node.js、Express.js 和 Socket.IO 技术来...通过学习这个项目,开发者可以深入了解 IoT、实时通信和服务器端 JavaScript 开发。

    Nodechat:一个 node.jssocket.iomarionette 聊天应用

    节点聊天一个聊天应用程序,旨在展示以下工具的使用:要求需要在项目根目录中创建一个 .env 文件,具有以下属性: NODE_ENV=INSERTVARHERE APP_ID=INSERTVARHERE ACCESS_TOKEN=INSERTVARHERE 其中INSERTVARHERE替换...

    flyingthing:Node.jssocket.io多屏飞物

    飞翔的东西这是无用的代码。 我不知道为什么我什至写了它,但这很有趣。 无论用户点击到哪里,这都是南安普敦(默认)徽标在屏幕... 使用tween.js制作动画,socket.io和node.js。 要运行它,只需执行node server.js 。

    tcp socket通讯库

    TCP套接字(TCP Socket)是网络编程中的一个重要概念,它是基于传输控制协议TCP的应用程序接口,用于在互联网上实现两台计算机之间的可靠通信。在本文中,我们将深入探讨TCP Socket的基本原理、如何封装以及如何在...

    dome-client.js:一个MOO可以运行以供其用户连接的node.jssocket.io Web应用程序。 不使用Flash或Java

    dome-client.js 在节点中编写的基于socket.io / websocket的MOO和MUD客户端。关于这是专为游戏提供给玩家的游戏而设计的。 不需要闪光灯。 不需要Java插件。 从最终用户的浏览器到服务器的连接是通过Web套接字到节点...

    屁屁聊天 PPJoke

    目前提供asp版下载,.Net版本的负载量更高,不过还在调试中,拖了很长时间了,最近一直忙着学习,没有更新,这里先提供下载。 此外最近一直在研究持续连接技术,也就是所谓的推技术,还有jssocket等企业级的类...

Global site tag (gtag.js) - Google Analytics