別のアプリケーションに転送するときに、同じSession変数を使用できるようにしたいと考えています。Response.Redirectは同じセッションを使用するのですか、新しいセッションを開始しますか?
Response.Redirectは同じセッションを使用するのですか、新しいセッションを開始しますか? ASPNET 3.5
別のアプリケーションに転送するときに、同じSession変数を使用できるようにしたいと考えています。Response.Redirectは同じセッションを使用するのですか、新しいセッションを開始しますか?
Response.Redirectは同じセッションを使用するのですか、新しいセッションを開始しますか? ASPNET 3.5
Response.Redirect
私はC#を使用しています
は、セッションで何もしません。セッションは、WebアプリのURIに関連付けられたCookieに(通常は)関連付けられます。別のサーバー上の別のWebアプリケーションまたは別のURIに切り替えると、Cookieを保持していてもセッションは持ち越されません。
あなたは解決しようとしている問題を明確にすることはできますか?
同じセッションを使用します。
EDIT:これは、新しいURLが同じセッションを使用していると仮定しています。
Response.Redirect
は、ステータスコードが302 Found
で、ヘッダーがLocation: {redirection-url}
のブラウザにHTTP応答を送信します。
ブラウザはこの応答を受信し、302 Found
の応答を受信すると、{redirection-url}
に新しい要求を送信することがわかります。
これはすべて起こります。
Response.Redirect
セッションを開始したり停止したりすることはありません。
別のアプリケーションからセッション変数にアクセスしようとしている場合、私は覚えている限り動作しません。セッション変数は1つのアプリ内でのみ有効です。
同じアプリケーション内の別のフォルダにリダイレクトする場合は、セッション変数を使用できます。
2つのアプリケーションが別々の場合は、データベースにセッションオブジェクトを格納し、POSTまたはURLパラメータを使用して新しいアプリケーションにsessionIDを渡すことができますが、どちらも安全性が高く、ユーザーの身元を確認するために適切な注意を払わずにハッキングに開かれたアプリ。
長期計画は、アプリケーション間で情報をデータベースに情報を格納してurlパラメータを渡すことを含むハンドシェイクを使用して安全に渡すことですが、私はただちにすぐにコードをテストする方法を探していました。 –
app2のapp1に設定されている値に、URLとしてパラメータとして渡さずにアクセスしようとしています。 –
私はそれがうまくいくとは思わない。あなたはそれをPOSTすることができます。 – AndyMcKenna
@Lill Lansey-そのような場合は、あなたの質問に言いたいことがあります。 –