0

ヘルプが必要です。asp.net MVC3 でアプリケーションを作成しており、生成されたカスタム セッション ID を設定したいのです。

var str = Math.floor(Math.random() * (2000 - 1000 + 1)) + 1000;

 document.write("Session ID::" + str);

上記のコードは Java スクリプト関数で記述されており、ASP.NET MVC3 のセッション ID にその番号を設定したいと考えています。

4

2 に答える 2

1

Google で簡単に検索すると、asp.net でセッション ID を上書きする方法を説明する次のブログ エントリが表示されます。

http://weblogs.asp.net/anasghanem/archive/2008/12/16/programmatically-ching-the-session-id.aspx

つまり、 SessionIDManagerクラスを使用し、SaveSessionIdメソッドを呼び出して、独自のセッション ID を設定します。

SessionIDManager manager = new SessionIDManager();
string mySessionId = ...calculateYourOwnSessionId...;
bool redirected = false;
bool IsAdded = false;
manager.SaveSessionID(Context, mySessionId, out redirected, out IsAdded);
于 2012-11-15T09:33:49.963 に答える
0

カスタム セッション値は暗号的に安全な乱数ジェネレーターを使用して生成されず、セッション管理に関するアプリケーションに脆弱性を導入するため、これは絶対に避ける必要があります。

現在のセッション識別子を取得する必要がある場合は、次の 2 つの方法のいずれかを実行できます。

// If in a page or user control:
string sessionId = this.Session.SessionID; 

// In ASP.NET in a normal class:
string sessionId = System.Web.HttpContext.Current.Session.SessionID;

詳しくはこちらをご覧ください。

于 2015-07-30T22:29:06.770 に答える