我正在使用 http 服务对象在 flex 中的方法内发出 servlet 请求。该方法由两个事件同时并行调用。我可以看到两个请求都已到达 servlet,但只有一个返回结果事件。而且这种行为并不一致。是否有可能并行调用 httpservice 导致丢失一些请求?我确信这两个请求都已到达 servlet 并从中返回数据。只是在某些情况下不会触发结果事件。提前致谢。
包括更好地描述问题的代码。
请在下面找到方法。下面的方法“callServlet”被两个单独的事件调用
私有变量 httpObj:HTTPService=new HTTPService();
私有函数 callServlet(text:String):void{
Alert.show(text);
httpObj = new HTTPService();
httpObj.url=<servlet URL>;
httpObj.method="POST";
httpObj.resultFormat="xml";
httpObj.contentType="application/xml";
var requestString:String=text;
httpObj.request=requestString;
httpObj.addEventListener(ResultEvent.RESULT,onResultMethods);
httpObj.addEventListener(FaultEvent.FAULT,onFaultMethod);
httpObj.send();
}
每次我调用该方法时,我都会传递一个不同的“文本”变量。我可以看到警报显示发送给它的两个不同的文本。如前所述,两个请求都到达了 servlet,并且从 servlet 发送了响应。但是结果事件“onResultMethod”只被调用一次。它也没有调用“faultonFaultMethod”。