我有一个 servlet,它获取一个 ID 作为参数并返回三个值。由于 servlet 代码很大,所以只提供必要的细节。
获取详细信息.jsp
Inputs : ID //as a query string
Returns: ID, average, count // As a JSON string
从客户端我一个一个地发出两个异步 javascript 请求(在第一个请求之后紧接着第二个)具有不同的 ID。来自服务器的响应如下:
响应:
For ID1 : ID1, average1, count1
For ID2 : ID1, average2, count2
对于 ID2,它给出正确的平均值和计数,但返回 ID1(第一个请求的 ID)。
当我在 getdetails1.jsp 中的 getdetails.jsp 中放入相同的代码并对每个 servlet 发出每个请求时,我得到了正确的结果。
回应:
For ID1 : ID1, average1, count1
For ID2 : ID2, average2, count2
这可能是什么原因以及如何纠正这个问题?
编辑:getdetails.jsp 的代码:
<%!
String ID;
JsonObject details = new JsonObject(); //using Google JSON Lib
%>
<%
ID=request.getParameter("id");
details.addProperty("ID",ID);
... //accessing corresponding average and count
details.addProperty("average",average);
details.addProperty("count",count);
out.println(details);
%>