亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ASP中用ajax方式獲得session的實(shí)現(xiàn)代碼

 更新時(shí)間:2011年05月27日 00:43:09   作者:  
前期做的時(shí)候,登錄方式順手用了ajax來做,登錄前先判斷在session中是否存在值,如果存在,那么無需登錄;如果不存在,那就彈出登錄頁面登錄。
由于我是用的ff瀏覽器,一直沒發(fā)現(xiàn)什么問題。上個(gè)禮拜提交給用戶看的時(shí)候,說用IE登錄完之后無效,大驚。結(jié)果還真的是這樣。。很囧
登錄代碼如下:
復(fù)制代碼 代碼如下:

//從服務(wù)器查詢是否存在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,代碼如下:
復(fù)制代碼 代碼如下:

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

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

去網(wǎng)上查了半天,發(fā)現(xiàn)同樣問題的還挺多,最后查到原因:緩存問題。

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

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

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

相關(guān)文章

最新評(píng)論