ASP Session ఆబ్జెక్ట్
- ముంది పేజీ ASP కూకీస్
- తదుపరి పేజీ ASP అప్లికేషన్
సెషన్ ఆబ్జెక్ట్ వినియోగదారి సమాచారాన్ని నిల్వ చేస్తుంది. సెషన్ ఆబ్జెక్ట్ లో నిల్వచేసిన వేరియబుల్స్ ఒక వినియోగదారి సమాచారాన్ని కలిగి ఉంటాయి, మరియు అన్ని పేజీలలో అనువర్తనంలో లభిస్తాయి.
సెషన్ ఆబ్జెక్ట్
మీరు ఏ అనువర్తనాన్ని చేరుస్తే, మీరు దానిని తెరుస్తారు, కొన్ని మార్పులు చేస్తారు మరియు దానిని మూసుతారు. ఇది ఒక సంభాషణ (సెషన్) వలె ఉంటుంది. కంప్యూటర్ మీరు ఎవరు అని తెలుసు. దానికి ప్రతి సమయంలో అనువర్తనాన్ని తెరిస్తున్నారు మరియు మూసుతున్నారని తెలుసు. కానీ ఇంటర్నెట్ లో ఒక సమస్య ఉంది: HTTP అడ్రెస్సులు స్థితిని స్థాయి పరచలేదు, కాబట్టి వెబ్ సర్వర్ మీరు ఎవరు అని మరియు మీరు ఏం చేస్తున్నారని తెలియదు.
ASP ద్వారా ప్రతి వినియోగదారికి ఒక ఏకైక కూకీని సృష్టించడం ద్వారా ఈ సమస్యను పరిష్కరించింది. కూకీ క్లయింట్ కు పంపబడుతుంది, దానిలో వినియోగదారిని గుర్తించగల సమాచారం ఉంది. ఈ ఇంటర్ఫేస్ సెషన్ ఆబ్జెక్ట్ అని పిలుస్తారు.
Session 对象用于存储关于用户的信息,或者为一个用户的 session 更改设置。存储于 session 对象中的变量存有单一用户的信息,并且对于应用程序中的所有页面都是可用的。存储于 session 对象中的信息通常是 name、id 以及参数。服务器会为每个新的用户创建一个新的 Session,并在 session 到期时撤销掉这个 Session 对象。
Session 何时开始?
Session 开始于:
- ఒక కొత్త వినియోగదారుడు ఒక ASP ఫైల్ అభ్యర్ధించినప్పుడు మరియు Global.asa పేజీలో Session_OnStart సబ్రోచన్ ప్రోగ్రామ్ సమర్పించబడినప్పుడు;
- ఒక విలువ సెషన్ వేరియబుల్లో నిల్వ చేయబడినప్పుడు;
- ఒక వినియోగదారుడు ఒక ASP ఫైల్ అభ్యర్ధించినప్పుడు మరియు Global.asa పేజీలో <object> టాగ్ ద్వారా సెషన్ స్కోప్ ద్వారా ఒక ఆబ్జెక్ట్ ని సమర్పించినప్పుడు;
సెషన్ ఎప్పుడు ముగిస్తుంది?
ఉపయోగదారుడు నిర్దిష్ట సమయంలో అప్లికేషన్ లో అభ్యర్ధన చేయకపోతే లేదా పేజీని తాజాగా అప్డేట్ చేయకపోతే, సెషన్ ముగిస్తుంది. అప్రమేయ విలువ 20 నిమిషాలు.
మీరు అధికంగా లేదా తక్కువగా సమయం కాల్పనికంగా నిర్వహించడానికి కావలసినప్పుడు, అంతరం నిర్వహించవచ్చు టైమ్ ఆఫ్ అంశం.
ఈ ఉదాహరణలో, 5 నిమిషాల టైమ్ ఆఫ్ సమయం కాల్పనికంగా నిర్వహించబడుతుంది:
<% సెషన్.టైమ్ ఆఫ్=5 %>
సెషన్ ను తక్కువ సమయంలో ముగించడానికి ఉపయోగించవచ్చు రద్దు చేయండి పద్ధతి:
<% సెషన్.రద్దు చేయండి %>
గమనిక:సెషన్ ఉపయోగించటంలో ప్రధాన సమస్య వాటిని పేర్కొనేది వాటిని ఎప్పుడు ముగించాలి. మనం వినియోగదారుల చివరి అభ్యర్ధన అయినా కాదు అని తెలుసుకోనిది. కాబట్టి సెషన్ "జీవించాలి" ఎంతసేపు అని తెలియదు. సెషన్ అని వేచి చదువుతే సర్వర్ వనరులు కొట్టిపోతాయి. అయితే సెషన్ ఎక్కువగా తొలగించబడితే, వినియోగదారులు పునఃప్రారంభించవలసి ఉంటుంది, ఇది కారణం సర్వర్ అన్ని సమాచారాన్ని తొలగించింది. సరికొత్త సెషన్ కోసం సరికొత్త సేపాటి సమయం కాల్పనికంగా పరిగణించబడుతుంది.
అడ్వైజరీ:మీరు సెషన్ వేరియబుల్లు ఉపయోగిస్తున్నప్పుడు, లోటుగా డేటా నిల్వ చేయకూడదు.
సెషన్ వేరియబుల్లు నిల్వ మరియు పొందడం
సెషన్ ఆబ్జెక్ట్ అత్యంత మెరుగుదల ఇది, దానిలో వేరియబుల్లు నిల్వ చేయవచ్చు మరియు తరువాతి పేజీలు ఆ వేరియబుల్లను చదవగలవు, దాని ఉపయోగం విస్తృతంగా ఉంటుంది.
ఈ ఉదాహరణలో, "Donald Duck" ను username పేరుతో సెషన్ వేరియబుల్లో నిల్వ చేస్తారు మరియు "50" ను age పేరుతో సెషన్ వేరియబుల్లో నిల్వ చేస్తారు:
<% Session("username")="Donald Duck" Session("age")=50 %>
ఒక్కసారి విలువ సెషన్ వేరియబుల్లో నిల్వ చేస్తే, అది ఏదైనా ఆస్ప్ అప్లికేషన్ పేజీలో ఉపయోగించబడుతుంది:
Welcome <%Response.Write(Session("username"))%>
上面这行程序返回的结果是: "Welcome Donald Duck"。
也可以在 session 对象中保存用户参数,然后通过访问这些参数来决定向用户返回什么页面。
下面的例子规定,假如用户使用低显示器分辨率,则返回纯文本版本的页面:
<%If Session("screenres")="low" Then%> This is the text version of the page <%Else%> This is the multimedia version of the page <%End If%>
移除 session 变量
contents 集合包含所有的 session 变量。
可通过 remove 方法来移除 session 变量。
在下面的例子中,假如 session 变量 "age" 的值小于 18,则移除 session 变量 "sale":
<% If Session.Contents("age")<18 then Session.Contents.Remove("sale") End If %>
如需移除 session 中的所有变量,请使用 RemoveAll 方法:
<% Session.Contents.RemoveAll() %>
遍历 contents 集合
contents 集合包含所有的 session 变量。可通过遍历 contents 集合,来查看其中存储的变量:
<% Session("username")="Donald Duck" Session("age")=50 డిమ్ ఐ For Each i in Session.Contents Response.Write(i & "<br />") తదుపరి %>
结果:
username age
如果需要了解 contents 集合中的项目数量,可使用 count 属性:
<% డిమ్ ఐ dim j j=Session.Contents.Count Response.Write("Session variables: " & j) For i=1 to j Response.Write(Session.Contents(i) & "<br />") తదుపరి %>
结果:
Session variables: 2 Donald Duck 50
StaticObjects సమాహారంలో ప్రయాణించండి
StaticObjects సమాహారంలో చూడండి, సెషన్ ఆబ్జెక్ట్లో నిల్వబడిన అన్ని ఆబ్జెక్టుల విలువలను చూడండి:
<% డిమ్ ఐ For Each i in Session.StaticObjects Response.Write(i & "<br />") తదుపరి %>
- ముంది పేజీ ASP కూకీస్
- తదుపరి పేజీ ASP అప్లికేషన్