我正在为我的应用编写java服务器。 当我调试我的Flash应用程序时,一切都很好。 当我发布它并从localhost加载它 - 它现在需要加载安全文件。
我将该文件作为字符串添加到我的服务器中,当我来自flash的请求时,我将其传递给我。我从请求读取所有数据直到结束空字节。 我没有忘记文件末尾的空字节。 在Flash应用程序中,套接字连接上有事件监听器,因此当Event.CONNECT触发时,服务器的第一个命令正在发送。 我可以看到,这个事件没有开始。我的服务器将策略文件传递给客户端,但客户端在获取策略后没有将套接字连接到服务器。
我整天都在努力解决这个问题。我已经不知道了,怎么做。拜托,帮助我。
String crossdomeinFile = "<?xml version=\"1.0\"?>\r\n" + "<cross-domain-policy>\r\n" + "<allow-access-from domain=\"*\" to-ports=\"*\" />\r\n" + "</cross-domain-policy>\r\n" + "\0";
System.out.println(crossdomeinFile);
ByteBuffer r = ByteBuffer.allocate(crossdomeinFile.getBytes().length);
r.put(crossdomeinFile.getBytes());
chanel.write(r);
答案 0 :(得分:0)
我解决了,这一切都是因为NIO的写入工作在非阻塞模式下,因此当我将数据写入套接字时,它不会完全传输。