views:

103

answers:

1

Hello everyone,

I am designing a top level page which is designed by implementing a frameset. In one frame of the frameset, I will invoke JavaScript to refresh the page to post to some URL regularly (every 10 minutes). In the other frame of the frameset, I will let user do the major work -- let end user enter input for a time-consuming form (e.g., to have a written essay test).

My question is, in my scenario, I think the frame which does the major user input work will never session expire, because the other frame will refresh? Is that understanding correct? My confusion is, I am not sure whether in another frame posting to some other URL in the same web site will block the other frame from session expire?

thanks in advance, George

+1  A: 

You are correct, that will keep the session alive.

The server keeps track of when you last fetched a page and passed your session identifier as a cookie. When it has been longer than the session timeout interval, it will no longer accept the session identifier and considers your session expired.

By hitting the server in the background, you are maintaining the session. Note, you do not have to do a POST. A simple GET will suffice.

Note, I am assuming your session timeout is longer than ten minutes.

RedFilter
We have various ways to set session timeout, SciptTimeout, IIS web site time out setting and application pool idle time setting, which one is of the highest priority? Or in other words, if we set them all, which one will take effect? The smallest value one or?
George2
"The server keeps track of when you last fetched a page and passed your session identifier as a cookie." -- as long as I fectch something in the same web site, correct?
George2
Correct, same site. In general, smallest value will determine session length, but if you are using db sessions, they will persist across an app pool reset.
RedFilter
We have various ways to set session timeout, SciptTimeout, IIS web site time out setting and application pool idle time setting, which one is of the highest priority? Or in other words, if we set them all, which one will take effect? The smallest value one or?
George2