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

首頁 > 編程 > ASP > 正文

ASP中用ajax方式獲得session的實現代碼

2024-05-04 11:08:16
字體:
來源:轉載
供稿:網友
前期做的時候,登錄方式順手用了ajax來做,登錄前先判斷在session中是否存在值,如果存在,那么無需登錄;如果不存在,那就彈出登錄頁面登錄。
 
 
 
由于我是用的ff瀏覽器,一直沒發現什么問題。上個禮拜提交給用戶看的時候,說用IE登錄完之后無效,大驚。結果還真的是這樣。。很囧 
登錄代碼如下: 
復制代碼代碼如下:

//從服務器查詢是否存在session 
j.ajax({ 
type:"GET", 
url:"sessioncheck.asp", 
data:"", 
timeout: 1000, 
error: function(){ 
alert('sorry, server is busy now!'); 
}, 
success:function(comments_data){ 
if(comments_data == 1){ 
el.createDialog(opts); 
j.startOver(); 

else{ 
var sql = selectSQL(searchkey,stype); 
window.location.href = sql; 


}); 

大致是這樣 sessioncheck.asp里面無非就是去查session,代碼如下: 
復制代碼代碼如下:

if session("username") = "" then 
Response.Write("1") 
else 
Response.Write("2") 
end if 

結果就是用IE這個session("username")死活沒有,timeout設置了也沒用。 

去網上查了半天,發現同樣問題的還挺多,最后查到原因:緩存問題。 

異步get獲取時,如果url不變,是直接調用的緩存中的信息,然后就導致了一直獲得不到session里的值。 

解決方法那很簡單了,google "asp 清除緩存" 一大堆。 
最后是在sessioncheck.asp里添加了一段,如下: 
復制代碼代碼如下:

Response.Buffer =True 
Response.ExpiresAbsolute =Now() - 1 
Response.Expires=0 
Response.CacheControl="no-cache" 
if session("username") = "" then 
Response.Write("1") 
else 
Response.Write("2") 
end if 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新昌县| 鄂托克前旗| 梅河口市| 巴南区| 湖南省| 海门市| 罗田县| 麻城市| 阿拉善右旗| 杨浦区| 昌邑市| 开鲁县| 巩留县| 万安县| 吴旗县| 建平县| 衡南县| 隆子县| 岢岚县| 锡林浩特市| 彭州市| 金昌市| 靖远县| 连云港市| 江西省| 长寿区| 高淳县| 定日县| 淮安市| 建水县| 左权县| 金湖县| 开原市| 徐汇区| 祥云县| 于都县| 嘉定区| 城固县| 澄江县| 二连浩特市| 合江县|