国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

工作中的問題解決 -- (win2003 asp.net) Session和帶頁面回傳的方法無法正常使用解決方案

2019-11-17 01:33:28
字體:
來源:轉載
供稿:網友

工作中的問題解決 -- (win2003 asp.net) session和帶頁面回傳的方法無法正常使用解決方案

公司BP&IT項目組.從上上個月成立開始開發BP&IT軟件.這個月開始測試我悲劇的發現他盡然不支持我電腦上的IE11.半個多月還沒解決

我們先來分析下原因首頁 登陸頁面正常瀏覽http://hr.bingjun.cc/

登陸后網址呈現http://hr.bingjun.cc/(F(0-MEj-fnv8v-hWRGI2rOhfQ_0SZjQAnMEBs5P1DKcEhwdX-TTu8TAZ_H6HVGorBM-TaTm4zK_DCSdO8gvqOXWCoou4YJIVziHJ1PC9hke7w1))/Default.aspx

點擊任何網頁任意一個鏈接

鍵 值Refererhttp://hr.bingjun.cc/MyTask/MyTaskPage.aspx

就302http://hr.bingjun.cc/

對網址http://hr.bingjun.cc/(F(0-MEj-fnv8v-hWRGI2rOhfQ_0SZjQAnMEBs5P1DKcEhwdX-TTu8TAZ_H6HVGorBM-TaTm4zK_DCSdO8gvqOXWCoou4YJIVziHJ1PC9hke7w1))/Default.aspx

分析我們可以發現可以輕易發現.這是一個使用無Cookie模式的網址鏈接.并且F打頭可以判斷我們的BP&IT項目組使用了Forms表單驗證

而跳轉頁面卻是一個http://hr.bingjun.cc/MyTask/MyTaskPage.aspx不帶無Cookie URL的頁面這樣就導致了Cookie丟失就更別論依靠Cookie工作的 Session 和 登陸狀態了

為什么頁面跳轉后卻沒有帶上CookieURL了 我想是因為他們的代碼沒有使用 服務器路徑“~/” 所導致 因為只有使用服務器路徑ASP.NET才會幫我們自動的吧CookieUrl段給帶上

發現后立即詢問BP&IT項目組為什么我的IE11無法使用內部網站(回答我是微軟的BUG)

盡然是這樣那根據我所掌握的知識能導致此問題的BUG 應該是ASP.NET把 IE11識別為無Cookie 瀏覽器了

那這樣的話解決辦法就很多 首先從服務器級別講起

我們知道ASP.NET識別瀏覽器是不是無Cookie的是通過本身的一個庫來識別的那我們也可以往這個庫里加點東西

C:/Windows/Microsoft.NET/Framework/v4.0.30319/Config/Browsers

打開此目錄可以發現下面后很多文件沒錯這就是ASP.NET用來識別瀏覽器的庫了打開ie.browser

添加一個browser 配置節點

<browser id="IE11" parentID="Mozilla">        <identification>          <userAgent match="Trident//7.0; rv:(?'version'(?'major'/d+)(/.(?'minor'/d+)?)(?'letters'/w*))(?'extra'[^)]*)" />          <userAgent nonMatch="IEMobile" />        </identification>        <capture>        <userAgent match="Trident/(?'layoutVersion'/d+)" />       </capture>       <capabilities>         <capability name="browser"              value="IE" />         <capability name="layoutEngine"         value="Trident" />         <capability name="layoutEngineVersion"  value="${layoutVersion}" />         <capability name="extra"                value="${extra}" />         <capability name="isColor"              value="true" />         <capability name="letters"              value="${letters}" />         <capability name="majorversion"         value="${major}" />         <capability name="minorversion"         value="${minor}" />         <capability name="screenBitDepth"       value="8" />         <capability name="type"                 value="IE${major}" />         <capability name="version"              value="${version}" />       </capabilities>     </browser>

這樣該服務器上v4.0.30319版本下的所有站點此問題都算是解決了

2 BP&IT的還說過他們找到過在服務器上改配置文件的解決方法他們不敢用 服務器上站點太多怕崩潰 哎~~不知道怎么說他們

不知道ASP.NET Config配置文件 站點的都可以追加或覆蓋全局的嗎?(PS:在上面那個路徑的Config下的都是全局配置)

既然是可以覆蓋那在項目里新建個瀏覽器文件不就OK了 至于怎么新建瀏覽器文件這個應該不用我說了吧(博客園的圖片盡然要外鏈要不我加幾個步驟進來了)

3 如果這也閑麻煩或者怕以后還會有類似的不識別的瀏覽器那就修改cookieless的值吧

打開web.config 添加或修改System.web下的節點

<sessionState mode="In

配置cookieless="UseCookies" 這也所有的瀏覽器不管瀏覽器支不支持Cookie 都使用瀏覽器Cookie 而不是URLCookie(話說你們見過不支持Cookie的瀏覽器嗎?PS:我么見過)

到這兒我想也差不多了吧

PS:IE11出現 ——_doPostBack未定義 也是瀏覽器不識別的問題哦 不過不是以為瀏覽器不識別Cookie而是以為他不支持javascript通過最開始的2個方法一樣的解決上的重點是在配置中加入如下2句

<capability name="Javascript"           value="true" />  <capability name="cookies"              value="true" />

(PS:你們見過不支持Javascript的瀏覽器嗎?我沒見過..這微軟..搞毛!默認成都支持多好不支持才寫配置文件不很好嘛)

技術交流群NET技術交流


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 山丹县| 承德市| 洛宁县| 横山县| 石林| 防城港市| 南通市| 宁晋县| 满城县| 中西区| 白水县| 衡水市| 高台县| 苗栗市| 和静县| 龙里县| 昭苏县| 襄樊市| 山东省| 临猗县| 鹿泉市| 沁源县| 塔城市| 霍山县| 翼城县| 大兴区| 青神县| 马关县| 开化县| 舞钢市| 洞口县| 堆龙德庆县| 盐源县| 萨迦县| 成安县| 河西区| 定兴县| 定兴县| 五常市| 大埔县| 灵璧县|