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

flex socket 与java通信碰到的问题

    博客分类:
  • Flex
阅读更多

   其实就是粘包问题了。

 

   老实讲,到现在还是没搞明白SOCKET_DATA被触发的底层原理,猜测是否与as的轮询机制有关,谁完全了解,还请不吝指教。

 

   目前遇到的情况有多个封包黏在一起触发,因此flex socket缓冲区中会存在多个封包的内容,此时在读取的时候就需要进行拆包。

 

   一般的做法都是在正式数据封包的前面多+4个字节,用来存放一个长度值,代表其后紧跟的数据包的字节长度。

 

   但我这次在Java端用的amf封装,正式的包头也被amf给封装了,取的数据不完整是解压不出来的,还苦恼了好久如何取的长度,其实一样的,在Java使用amf格式封装完数据包后,再在其前面+4个字节放置长度值,就可以了。

 

   当然,也有可能一个完整的数据包到达客户端后,SOCKET_DATA被触发了多次,这样每次socket缓冲区中的数据就是不完整的,直接解压不了的,这时应该自己设一个全局bytearray,作为一个缓存,如果长度不够,将字节流存放在这个bytearray中,与下次来的字节流进行续接,直到长度=需要的字节流长度时,再进行字节流的解压,这就是合包/并包了。

 

   最后还需要进行出错处理。

 

   还要再看看网络传输,网络层和应用层的机制。

0
0
分享到:
评论
1 楼 0dragon 2012-04-23  
同求解啊

相关推荐

    flex与java通信

    Flex与Java通信是Web开发中的一个重要领域,它允许前端用户界面(UI)通过富互联网应用程序(RIA)与后端服务器进行交互。Flex是Adobe开发的一种用于构建动态、交互性强的Web应用的开源框架,主要基于ActionScript...

    Flex与Java Socket通信

    Flex与Java Socket通信是Web应用程序开发中的一个重要技术,它允许客户端和服务器之间进行实时、双向的数据交换。在本文中,我们将深入探讨如何实现Flex客户端与Java服务器之间的Socket通信。 首先,确保你拥有以下...

    flex与JAVA的SOCKET通信

    flex与JAVA的SOCKET通信,详细讲解flex与JAVA的SOCKET通信

    flex与java采用socket方式通信

    标题中的“flex与java采用socket方式通信”是指在开发分布式应用程序时,使用Adobe Flex作为前端UI框架,通过Socket协议与Java后端服务器进行数据交互的一种技术实现。Flex是一款基于ActionScript的开源框架,用于...

    flex Socket 通信

    Flex Socket通信是Adobe Flex应用程序与Java应用程序之间进行低级网络通信的一种方式。Flex是一种基于ActionScript的开源框架,主要用于创建富互联网应用(RIA),而Java则是一种广泛使用的多平台编程语言,尤其在...

    FLEX与JAVA通过SOCKET通信

    标题 "FLEX与JAVA通过SOCKET通信" 涉及的是在客户端与服务器之间使用FLEX(Adobe Flex)和JAVA进行Socket通信的技术。Flex是一种开源的、基于MXML和ActionScript的开发框架,用于构建富互联网应用程序(RIA)。Java...

    flex+java+tomcat实现socket通信及安全策略

    2.重点解决安全策略问题:将flash发布为html格式后,本地访问页面后,一般可以与服务器进行socket通信;但是部署到tomcat服务器上后无法通信,这是因为flex安全策略引起的;需要在java服务端开通843权限策略,具体看...

    Flex和java的socket通信

    ### Flex和Java的Socket通信详解 #### 一、引言 在互联网应用开发中,不同技术栈之间的通信是非常重要的一个环节。本篇文章将详细介绍如何利用...希望本文能够帮助您更好地理解和掌握Flex与Java的Socket通信技术。

    flex与socket之间的通信

    Flex与Socket之间的通信是Web应用中一种常见的实时数据交互方式,尤其在开发在线聊天功能时。Flex是一款基于Adobe Flash Player的开发框架,用于构建富互联网应用程序(RIA)。Socket,也称为套接字,是网络编程中的...

    flex+java的socket通信

    ### Flex + Java 的 Socket 通信知识点解析 #### 一、概览 在现代软件开发中,前后端分离架构越来越受到青睐。在这种模式下,前端负责用户界面和用户体验,而后端则处理业务逻辑和数据管理。Flex 和 Java 分别作为...

    flex socket开发总结

    在开发基于Flex的应用程序时,与服务器进行实时通信是常见的需求,而Socket接口提供了这种能力。本文将深入探讨Flex中Socket开发的关键知识点,包括如何连接到Java和C++的Server Socket,以及在实际应用中的注意事项...

    flex的socket客户端连接java多线程socket服务端demo

    本示例探讨了如何使用Adobe Flex作为客户端,通过Socket接口与Java实现的多线程Socket服务端进行通信。以下是对这个主题的详细解释: 首先,Flex是一种开放源代码的富互联网应用程序(RIA)开发框架,它允许开发者...

    Flex Soket与Java通讯

    Flex Socket与Java通讯是网络编程中的一个重要领域,它允许基于Adobe Flex的客户端应用程序与服务器端的Java应用进行数据交换。Flex是一种开源的、基于ActionScript的框架,常用于创建富互联网应用程序(RIAs)。而...

    Flex和java的socket通信.chm

    Flex和java的socket通信 连接 单向通信 多客户通信 一个简单的聊天室

    Flex_AS3与Java的Socket通信

    在本文中,我们将深入探讨Flex AS3与Java的Socket通信技术,这是一种允许Web应用程序(如Flash游戏)与服务器进行低级数据传输的方法。Flex AS3是Adobe开发的ActionScript 3.0编程语言的一个框架,它提供了丰富的...

    flex java socket 文字聊天

    Flex Java Socket文字聊天是一种基于Adobe Flex前端技术和Java后端Socket通信技术实现的实时文本聊天应用。这个应用允许用户通过网络进行双向通信,提供了一个简单但功能完备的平台,让用户能够发送和接收即时消息。...

    flex socket解决安全沙漏

    在使用Flex Socket进行通信时,可能会遇到安全沙漏相关的限制,导致连接问题,特别是当尝试跨域通信时。 安全沙漏分为三种类型:本地沙漏、网络沙漏和浏览器沙漏。在尝试与远程服务器建立Socket连接时,如果不在...

    flex与java通讯,URL,HTTPService,Socket

    Flex与Java之间的通信是开发跨平台应用程序时的关键技术,它允许客户端(通常为Flex应用程序)与服务器端(通常是Java应用程序)进行数据交换。本篇将深入探讨几种主要的通信方式:URLLoader,HTTPService和Socket。...

    FLEX 与现有开发语言的通信全面解析

    七、Flex与WebSocket的通信:Flex可以通过Socket类或WebSocket类实现与WebSocket服务器的双向实时通信,适用于需要低延迟和高实时性应用场景。 八、数据序列化与反序列化:在通信过程中,数据需要在不同平台间进行...

Global site tag (gtag.js) - Google Analytics