【发布时间】:2011-07-27 08:06:24
【问题描述】:
我想知道为什么网络请求可以在 FlashCS5 和本地浏览器中工作,但是当我将其发布到网上时它失败了,每个人的经验是什么。 survivorId 是从字符串查询发送的。两个测试都是调用网络数据库完成的。
我尝试了以下方法:
在文本字段中输出survivorId 并查看参数变量是否正确发送。
在发布设置中设置“仅限网络”选项。
还有没有办法从浏览器输出跟踪操作以进行更深入的调试?
*编辑:我在浏览器中本地重新创建了该错误。如果没有跟踪操作,我不知道我是否能弄清楚。
*EDIT2:那个错误只是因为它来自本地主机而出现(抱歉,这很奇怪)
这是我的代码,有“舞台”,然后是“localSurvivor”(movieClip),然后在localSurvivor 电影剪辑中,“lPlayer”类是 addChild() 到 localSurvivor MovieClip
Stage-> localSurivor-> lPlayer(survivorId);
舞台上有这段代码:
//Set localP Id
var survId:Number = root.loaderInfo.parameters.sId;
//Object(root).informationTxt.text = survId;
//加载影片剪辑类_________________________
//Load Local Survivor
var localP:MovieClip = new lPlayer(survId);
//Add to stage
Object(root).localPlayer.addChild(localP);
//------------------------------------------
然后在 lPlayer 类中:
public function lPlayer(survId:Number) {
//First retrieve player information(Position, SWF File, MapId, etc, etc)
//Prepare data to request
netVariables.act = "fortDetails";
netVariables.survivorId = survivorId;
netRequest.method = URLRequestMethod.POST
netRequest.data = netVariables;
netLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
//Attach Event Handler to proccess data
netLoader.addEventListener(Event.COMPLETE, proccessFirstRun);
}
private function proccessFirstRun(rawData:Event) {
var playerInfo = rawData.target.data
//Player Info Loaded, Load the player onto the board
this.x = playerInfo.setx;
this.y = playerInfo.sety;
//Activate remote Survivors with fortId
Object(root).remotes.changeLevel(playerInfo.fid);
Object(root).zombieContain.changeLevel(playerInfo.fid);
}
//Request Data
netLoader.load(netRequest);
【问题讨论】:
标签: php flash networking flash-cs5