現在の設定では、2 つのサイト間でミラーリングされたセッションを維持する必要があります。1 つの既存の ASP.NET Web サイトは IIS 6.0 でホストされ、現在は iFrame に新しい Web サイトが含まれており、IIS 7.5 (MVC3) で個別にホストされています。
親セッションを子 Web サイト セッションと一致させる方法について何か提案はありますか?
私が最初に考えたのは、ActionFilter を作成して、OnActionExecuting メソッドで親サイトの種類の HTTPHandler に対して HttpWebRequest を起動することでした。これが特定のセッションをインラインに維持する方法について疑問が提起されました。おそらく、セッション ID に関する知識が不足しているのでしょうか?
何かのようなもの:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
try
{
var request = WebRequest.Create(
ConfigurationManager.AppSettings["HeartbeatURI"]);
using (var webResponse = request.GetResponse())
{
var response = webResponse as HttpWebResponse;
if (response != null && response.StatusCode == HttpStatusCode.OK)
{
ここで何か推奨事項/アドバイスはありますか?ありがとう!
アップデート:
いくつかの役立つ提案の後、ブラウザからの解決策かどうかを調査します。次のようなものです。
function setHeartbeat() {
setTimeout("heartbeat()", 300000); // every 5 min
}
function heartbeat() {
$.get(
"http://soemthing:1234/heartbeathandler.ashx",
null,
function(data) {
setHeartbeat();
},
"json"
);
}
必要に応じて実行します。