2011-05-12 46 views
0

套接字服务器我通过阅读方法连接到插座服务器:http://livedocs.adobe.com/flex/3/html/help.html?content=17_Networking_and_communications_5.html连接从ActionScript 3的AIR应用程序

我写了一个AIR应用程序连接到Java服务器代码,但客户端无法连接。代码中缺少什么?

<?xml version="1.0" encoding="utf-8"?> 
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx" backgroundColor="#D5F8C3"> 

    <fx:Script> 
     <![CDATA[ 

      import flash.net.XMLSocket; 



      var socket:XMLSocket; 

      public function b1_clickHandler(event:MouseEvent):void 
      { 

       var socket:XMLSocket; 
       socket.connect("127.0.0.1",8080); 
       socket.send("Hello"); 
       //socket.addEventListener(DataEvent.DATA, onData); 

      } 




     ]]> 
    </fx:Script> 

    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 


    </fx:Declarations> 
    <s:Button id="b1" x="285" y="162" label="Send Text" width="201" height="105" click="b1_clickHandler(event)"/> 
</s:WindowedApplication> 

回答

0

您必须在发送数据之前等待CONNECTED事件。另外,确保你已经成功跨域安全(看:http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7c60.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7c63

服务器/客户端代码为例:Air 2 ServerSocket Crossdomain problem

+0

感谢help..how我会收到相关事件?请让我知道一些代码示例 – iceman 2011-05-12 14:05:03

+0

我刚刚添加了一个链接到我的回复 – 2011-05-12 14:40:12

+0

这工作。谢谢。但是我无法从java服务器获取任何数据,我将这些行添加到服务器:Writer out = new OutputStreamWriter(incoming.getOutputStream()); \t Date now = new Date(); out.write(now.toString()+“\ r \ n”); \t String str = readerIn.readLine();和上侧AS3加入:私有函数昂达(事件:DataEvent):无效 \t \t \t { \t \t \t \t迹( “[” + event.type + “]” + event.data); \t \t \t} – iceman 2011-05-12 16:04:00

相关问题