【发布时间】:2023-04-11 12:46:01
【问题描述】:
我正在尝试为 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消息(总是超时), 我可以增加更多时间来请求策略文件吗? 我可以创建新的策略服务器吗?
【问题讨论】: