我正在尝试为 Flash 创建一个游戏服务器,但我一直在尝试将策略文件从我的 Java 服务器发送到 Flash 游戏。
服务器收到消息
<policy-file-request/>\0
同样,但是将 xml 返回到游戏中是行不通的。
这是我在获取和返回消息时的游戏服务器代码
if (message.equals("<policy-file-request/>" + '\0')) {
StringBuffer policyBuffer = new StringBuffer();
policyBuffer.append("<?xml version=\"1.0\"?><cross-domain-policy>");
policyBuffer.append("<allow-access-from domain=\"*\" to-ports=\"*\" />");
policyBuffer.append("</cross-domain-policy>");
String returnPolicy = policyBuffer.toString() + '\0';
//byte[] returnPolicyBytes = returnPolicy.getBytes();
System.out.println("Returning cross-domain-policy...\n" + returnPolicy);
//packet.socket.getOutputStream().write(returnPolicyBytes, 0, returnPolicyBytes.length);
//packet.socket.getOutputStream().flush();
packet.out.println(returnPolicy);
packet.out.flush();
return;
}
**“packet”是我的套接字客户端包装对象,它具有“out”字段,它是“PrintWritter”类的对象**
我不知道为什么我的 Flash 游戏收不到 xml 消息(总是超时),我可以增加更多时间来请求策略文件吗?我可以创建新的策略服务器吗?