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"的话,它找不到换行符号,就会在那里一直监听等待,不会响应(汗~~~我自己就是在这里被卡了很久)
分享到:
相关推荐
首先,XMLSocket是Flash中的一个类,它提供了基于TCP/IP的双向通信功能,可以实现客户端与服务器的实时数据交换。这种通信方式适用于需要低延迟、高效率的场景,比如游戏、聊天应用等。在Java端,我们可以使用Socket...
- **XMLSocket**:Flash Player支持XMLSocket类,用于实现双向、实时的全双工通信。Java可以通过实现相应的服务器来接收和发送数据。 - **AMF通信**:Action Message Format (AMF)是Flash用于数据交换的一种高效二...
在本话题中,我们将深入探讨Flash网游基础通讯,重点关注Flash与FMS(Flash Media Server)以及Flash与Java之间的交互。这些技术在构建实时互动游戏和多媒体应用时起着至关重要的作用。 首先,让我们来看看Flash与...
XMLSocket是基于TCP/IP的实时通信方式,它创建一个持久的连接,允许Flash客户端与服务器之间实时发送和接收数据。使用XMLSocket,开发者可以直接操作二进制数据流,灵活性高,但需要处理更多的底层细节。 三、Flash...
在ActionScript中,我们通常使用Flash的ExternalInterface类来与JavaScript交互,进而调用服务器端的脚本(如PHP、ASP.NET或Java)来处理数据库操作。这些服务器端脚本会负责与数据库建立连接,执行SQL查询,并将...
Flash的XMLSocket类是实现服务器推送的关键,它允许双向、全双工的TCP连接,使服务器能主动向客户端推送数据。 4. **JavaScript**:在用户界面层,AFLAX使用JavaScript来处理和展现从服务器接收的数据,以及与用户...
XMLSocket是Flash中的一个类,用于建立TCP套接字连接,实现客户端与服务器的双向通信。在这个五子棋游戏中,XMLSocket是前端Flash与后端Java通信的桥梁,负责实时传递玩家的每一步棋,确保双方的状态同步。 **...
多人游戏的核心是网络通信,Flash 10提供了Socket和XMLSocket类,用于实现客户端与服务器之间的实时双向通信。开发者可以通过这些类建立TCP或UDP连接,传输游戏状态更新、玩家动作等数据。此外,SharedObject类则可...
4. **Flash XML Socket**:利用Flash提供的XMLSocket类,结合JavaScript与Flash的交互,建立低延迟的双向通信。然而,Flash插件的普及度下降,且可能遇到防火墙和代理服务器的限制。 5. **Java Applet套接口**:...
AS3提供了Socket类,允许创建TCP连接,用于发送和接收文本或二进制数据。 - **XMLSocket**:另一种可能的通信方式,适合简单的文本传输,但不如Socket灵活。 3. **UI组件** - **显示列表**:AS3中的DisplayObject...
文档描述与标签:此PDF文档涉及Wowza Media Server Pro与Flash Media Server之间的API映射,旨在为开发者提供从Flash Media Server迁移到Wowza Media Server Pro的指南。 **重要知识点详述** ### Wowza Media ...
ActionScript提供了XMLSocket类用于稳定的TCP连接,以及HTTPService、LoadVars等类用于HTTP通信。书中可能会讲解如何通过这些网络类实现客户端与服务器之间的高效通信,保证游戏状态的同步。 知识点七:性能优化和...
在Flash Player运行跨域请求(如Socket或XMLSocket连接)时,它会遵循严格的同源策略,即只允许与相同域名下的资源进行通信。但为了实现跨域数据交换,开发者可以部署一个Flash Policy File Server。这个服务器会...
AS3提供了Socket和XMLSocket类,它们可以用来建立TCP或HTTP连接,实现客户端和服务器之间的数据传输。在远程桌面场景中,这些类将用于实时发送和接收屏幕图像、键盘和鼠标事件等数据。 1. **数据传输协议**:远程...