2012-08-28 34 views
1

我在同一臺服務器上有兩個asp頁面。第一個使用查詢字符串信息和會話信息動態生成XML。第二個使用XMLHTTP對象讀取第一個數據,並使用XML數據執行操作。Session和XMLHTTP

但是,我的問題是XMLHTTP請求完成服務器端。因此,當生成xml時,客戶端的會話變量不可訪問。

我該怎麼做才能讓生成XML的頁面接收會話變量?

謝謝。

回答

0

您試圖做的事情有很多問題,尤其是它可能導致忙碌的服務器完全鎖定。

這是另一種方法。

將第三頁添加到您的解決方案。該頁面僅包含一個返回XML DOMDocument的函數。這個函數包含原始xml生成頁面中的所有邏輯,但將XML構建到DOM中(您可能已經準備好了嗎?)。現在

原始網頁只需包含這個新的功能頁面,調用函數,並將DOM來響應:

<!-- #include file="xmlFunction.asp" --> 
<% 
     Response.ContentType = "text/xml" 
     Response.CharSet = "UTF-8" 
     GenerateXml().Save Response 
%> 

您的客戶端的頁面現在可以看看這個

<!-- #include file="xmlFunction.asp" --> 
<% 
    . . . 

    Dim dom: Set dom = GenerateXml() 
    ''# Code that uses the XML in the dom. 

%> 

無需額外「要求自我「是需要的,因此沒有潛在的鎖定。由於xmlFunction.asp中的代碼作爲原始請求的一部分運行,因此可以訪問相應的Session對象。

+0

非常感謝。我沒有想到它,因爲我不是生成XML的腳本的所有者,但是您提醒我開發人員應該進行交流以使其工作。 – user1553136