`

Java与flash的TCP通讯(XMLSocket类)

阅读更多
Java与flash的TCP通讯(XMLSocket类)http://www.webjx.com  更新日期:2006-08-22 02:32  出处:闪吧  作者:弃天笑  今天下午研究了一下flash里的XMLSocket类遇到了小小问题,所以把它发了出来
flash代码:
var mySocket:XMLSocket = new XMLSocket();
//本地地址,端口5000
mySocket.connect("localhost", 5000);
//事件
mySocket.onConnect = function(myStatus)
{
if (myStatus)
{
  trace("连接成功!");
  //发送信息
  mySocket.send("soda" + "\n");
  trace("发送成功!");
}
else
{
  trace("连接失败!");
}
};
//接受信息事件
mySocket.onData = function (msg:String)
{
   trace("接受到的内容:" + msg);
}
--------------------------------------------------
java代码:
import java.net.*;
import java.io.*;


public class Server 
{
public static void main(String[] args) throws Exception
{
  //建立服务器(TCP)
  ServerSocket ss = new ServerSocket(5000);
  System.out.println("等待连接.......");
  Socket sk = ss.accept();
  System.out.println("连接成功......");
  //建立字符流
  BufferedReader br = new BufferedReader(new InputStreamReader(sk.getInputStream()));
  System.out.println("获取BufferedReader......");
  System.out.println("获取里面的内容......");
  //等待接受信息
  String name = br.readLine();

  //发送信息
  PrintWriter os = new PrintWriter(sk.getOutputStream());
  os.println("soda,soda" + "\0");
  os.flush();
  os.close();
  System.out.println("内容:" + name);
}
}-----------------------------------------------------------
值得注意的是mySocket.send("soda" + "\n");这句话,如果后面没有加"\n",java服务器是不能马上接受信息的。因为br.readLine()是接受一行的,如果没有"\n"的话,它找不到换行符号,就会在那里一直监听等待,不会响应(汗~~~我自己就是在这里被卡了很久)
分享到:
评论

相关推荐

    flash XMLSocket java 通信(采用服务器推技术 解决了乱码 )

    首先,XMLSocket是Flash中的一个类,它提供了基于TCP/IP的双向通信功能,可以实现客户端与服务器的实时数据交换。这种通信方式适用于需要低延迟、高效率的场景,比如游戏、聊天应用等。在Java端,我们可以使用Socket...

    FLASH与JAVA的交互

    - **XMLSocket**:Flash Player支持XMLSocket类,用于实现双向、实时的全双工通信。Java可以通过实现相应的服务器来接收和发送数据。 - **AMF通信**:Action Message Format (AMF)是Flash用于数据交换的一种高效二...

    flash网游基础通讯(FMS,JAVA)

    在本话题中,我们将深入探讨Flash网游基础通讯,重点关注Flash与FMS(Flash Media Server)以及Flash与Java之间的交互。这些技术在构建实时互动游戏和多媒体应用时起着至关重要的作用。 首先,让我们来看看Flash与...

    flash与服务器端通信

    XMLSocket是基于TCP/IP的实时通信方式,它创建一个持久的连接,允许Flash客户端与服务器之间实时发送和接收数据。使用XMLSocket,开发者可以直接操作二进制数据流,灵活性高,但需要处理更多的底层细节。 三、Flash...

    flash连接数据库示例

    在ActionScript中,我们通常使用Flash的ExternalInterface类来与JavaScript交互,进而调用服务器端的脚本(如PHP、ASP.NET或Java)来处理数据库操作。这些服务器端脚本会负责与数据库建立连接,执行SQL查询,并将...

    aflax网页即时通讯框架

    Flash的XMLSocket类是实现服务器推送的关键,它允许双向、全双工的TCP连接,使服务器能主动向客户端推送数据。 4. **JavaScript**:在用户界面层,AFLAX使用JavaScript来处理和展现从服务器接收的数据,以及与用户...

    局域网对战五子棋游戏

    XMLSocket是Flash中的一个类,用于建立TCP套接字连接,实现客户端与服务器的双向通信。在这个五子棋游戏中,XMLSocket是前端Flash与后端Java通信的桥梁,负责实时传递玩家的每一步棋,确保双方的状态同步。 **...

    Packt.Flash.10.Multiplayer.Game.Essentials(含代码)

    多人游戏的核心是网络通信,Flash 10提供了Socket和XMLSocket类,用于实现客户端与服务器之间的实时双向通信。开发者可以通过这些类建立TCP或UDP连接,传输游戏状态更新、玩家动作等数据。此外,SharedObject类则可...

    服务器推送技术资料 server push

    4. **Flash XML Socket**:利用Flash提供的XMLSocket类,结合JavaScript与Flash的交互,建立低延迟的双向通信。然而,Flash插件的普及度下降,且可能遇到防火墙和代理服务器的限制。 5. **Java Applet套接口**:...

    全套源码-聊天室 ActionScript 3.0实现

    AS3提供了Socket类,允许创建TCP连接,用于发送和接收文本或二进制数据。 - **XMLSocket**:另一种可能的通信方式,适合简单的文本传输,但不如Socket灵活。 3. **UI组件** - **显示列表**:AS3中的DisplayObject...

    WowzaMediaServerPro_FMStoWowzaProAPIMapping.pdf

    文档描述与标签:此PDF文档涉及Wowza Media Server Pro与Flash Media Server之间的API映射,旨在为开发者提供从Flash Media Server迁移到Wowza Media Server Pro的指南。 **重要知识点详述** ### Wowza Media ...

    ActionScript for Multiplayer Games and Virtual Worlds.pdf

    ActionScript提供了XMLSocket类用于稳定的TCP连接,以及HTTPService、LoadVars等类用于HTTP通信。书中可能会讲解如何通过这些网络类实现客户端与服务器之间的高效通信,保证游戏状态的同步。 知识点七:性能优化和...

    FlashPolicyFileServer-master

    在Flash Player运行跨域请求(如Socket或XMLSocket连接)时,它会遵循严格的同源策略,即只允许与相同域名下的资源进行通信。但为了实现跨域数据交换,开发者可以部署一个Flash Policy File Server。这个服务器会...

    AS3 远程桌面

    AS3提供了Socket和XMLSocket类,它们可以用来建立TCP或HTTP连接,实现客户端和服务器之间的数据传输。在远程桌面场景中,这些类将用于实时发送和接收屏幕图像、键盘和鼠标事件等数据。 1. **数据传输协议**:远程...

Global site tag (gtag.js) - Google Analytics