flex与java的socket通信

网上的示例很多

比如[url]http://www.java1995.cn/article/688.html[/url]

记下注意点:

flex接受数据
[后台:java 前台:flex]

前台代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Style>
Button{
border-style:solid;
border-color:red;
background-color:green;
backgroundColor:green;
}
</mx:Style>

<mx:Script>
<![CDATA[
import com.sunshine.core.socket.SocketManager;
var socket:Socket = new Socket();
public function init():void{
socket.connect("127.0.01.1",8888);
socket.addEventListener(Event.CONNECT,funConnect);
socket.addEventListener(ProgressEvent.SOCKET_DATA,funSocket);
var b:ByteArray = new ByteArray();
b.writeUTF("code");
socket.writeBytes(b);
}
public function funConnect(event:Event){
conB.label="connection success";
}
var bytes:ByteArray =new ByteArray();
public function funSocket(event:Event){
var bb:ByteArray = new ByteArray();
trace("--write------");
//if (c.bytesAvailable>0){
trace("can read");
var image:String
rece();
}
public function connection():void{
rece();
}

public function rece():void{
while (socket.bytesAvailable) {
trace("available");
socket.readBytes(bytes,0,socket.bytesAvailable);
conB.label=bytes.readUTF();
}
}
]]>
</mx:Script>
<mx:Button id="conB" x="125" y="167" width="207" height="61" click="connection()">
</mx:Button>
</mx:Application>



注意
接受数据必须加上接受事件:
socket.addEventListener(ProgressEvent.SOCKET_DATA,funSocket);


[color=red]不能只写在一个组件的触发事件里面,否则接受不到数据。[/color]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值