我有一個大公司。網站與混合經典的asp和asp.net目前託管與Win 2003服務器,IIS 6.使用集成管道時,經典的ASP Request.Form不工作
我需要修改所有頁面輸出與一些html修改,無論他們來自哪裏的世界。 這個asp部分很老,結構也很糟糕,因此我不能採取任何一種「普遍包含」來應用我們需要的所有更改。最後,一些asp頁面輸出來自多個OCX/COM對象的代碼... 我們已經在計劃將整個重寫/遷移到.net,但不幸的是這是一個長期項目,我不能儘快完成。
所以我想(並測試)將其遷移到Win 2008 R2,IIS 7.5並利用集成管道模式,我可以使用.net httpmodule修改所有輸出。 一切工作正常:我可以正確地「注入」通過asp和asp.net呈現的頁面的html代碼,但是當傳統的asp頁面處理通過post發送的表單數據時(x-www-form- urlencoded)模塊。
看來,經典的ASP它使用集成管道模式時丟失了Request.Form對象,在每次使用時拋出錯誤'80004005'; Request.QueryString,而不是它正常工作。
我不會切換回經典管道模式,因爲我將失去修改經典ASP呈現的頁面的好處。在這裏使用Isapi過濾器是一場噩夢,我不會朝這個方向前進。
有誰知道任何解決辦法得到的Request.Form傳統的ASP工作時,綜合管線模式被激活 - 或 - 任何方式修改最終呈現的頁面輸出採用經典的管道,所以我可以修改它時,從傳統的ASP來與.net代碼發送給瀏覽器之前?
感謝您的幫助, Squiffy
編輯:不幸的是,我們沒有找到一個解決這個問題。與此同時,我們從零開始使用現代解決方案徹底重建了網站(耶!)。謝謝大家的幫助!
只使用'Request(「formElement」)'工作嗎? –
另外,你可以發佈什麼URL(或至少主機名)的樣子?而且 - 這是否發生在任何瀏覽器? –
嗨,Request(「formElement」)也失敗了,老實說所有的代碼都是這樣寫的。 – Squiffy