私は、asp.net mvcアプリケーションとpython/djangoアプリケーションの間でいくつかのデータを共有できるようにしたいと考えています。私が共有したいデータのタイプは、認証データまたはセッションデータです。asp.net mvcアプリケーションとPythonアプリケーションのセッションデータを共有することは可能ですか?
答えて
両方のフレームワーク間で共有リソースにアクセスする限り、これはもちろん可能です。おそらくいくつかの方法がありますが、最も明白なのは共有バッキングストアを使用する方法です。データベースか多分memcachedであっても速いでしょう。私はDjangoユーザーではありませんが、memcachedがサポートされていることを知っている限り、memcachedはサポートされています...
これはもっと複雑なシナリオがあります。データ互換性です。おそらく、両方のフレームワークが理解できるような互換性のあるフォーマットを使用する必要があります。 XML、JSON、BSON、または同様のもの。 Memcachedを使用する場合でも、翻訳を行う必要があります。
すぐに利用できるMS SQL Serverデータベースにセッション状態を格納するオプションがあります。次のステップからのステップを使用してください。http://support.microsoft.com/kb/317604 これは設定ではなく、実装ではありません。 独自のカスタムストレージプロバイダを作成できますが、その理由は何ですか?
私のpythonに慣れていないんだけど、それ 私がセッションを共有する方法http://wiki.python.org/moin/SQL%20Server
ための少なくともODBCドライバがある...
セッションCookieのサブドメインにとらわれない
を作ります<httpCookies domain=".mydomain.tld" />
私は
の間でセッションを共有したい私の二つのサブドメインを持っています210www.mydomain.tld [ASP.net MVC app]
extra.mydomain.tld [Python app]
JSONまたはXMLでシリアル化されたユーザーのセッションを返す単純なWebサービスまたは汎用ハンドラをASP.netに作成します。
汎用ハンドラを使用する場合は、クラスでIReadOnlySessionStateまたはIRequiresSessionStateインターフェイスを使用することを忘れないでください。
今すぐextra.mydomain.tldからwww.mydomain.tld/[Get/Set] SessionValueハンドラまたはサービスを呼び出すことができます。それはあなたの ".mydomain.tld"クッキーを受け取り、値の共有を許可します。
私はasp.net mvcのためにこのロジックをどこに置くのですか?いくつかのIISモジュールに入れますか? – Dave
私は(共有キャッシュやその他のデータストアもよい)共有データベースを使用して、次のアプローチをお勧めします:
- ユーザーがドメインのアプリケーションの1にアクセスすると、あなたとクッキーを作成しますキー "_shared_session"と、アプリケーションによって生成されたランダムな文字列の値。
- このクッキーの値をデータベースに保存し、アプリケーション間で共有するデータを保持するJSONオブジェクトに関連付けます。
- ユーザーが他のアプリケーションにアクセスすると、キー "_shared_session"を持つCookieが存在し、その値を読み取るかどうかを確認します。
- クッキーの値を使用すると、共有JSONオブジェクトを取得できます。
クイック答え:私も考えていたものだった新しいセッションを作成する前に、共有クッキーを探しフィルタ
- 1. ASP.NETとPHPの間でセッションデータを共有
- 2. ASP.NET MVCアプリケーションを共有する
- 3. ASP.NET MVC - アプリケーション間のアクションリンクを生成することは可能ですか?
- 4. Python Cocoa共有アプリケーションとタイマー
- 5. 複数のmvc 3プロジェクト間でビューを共有することが可能
- 6. 共有アプリケーション設定のUnity 2.0は可能ですか?
- 7. Mvcアプリケーションとwinformsアプリケーションの間で.net 4アセンブリを共有するにはどうすればいいですか?
- 8. 大きなASP.net MVCアプリケーションでコントローラを共有/拡張する
- 9. asp.netとasp.netの間でセッション状態を共有することは可能ですか
- 10. wp7の2つのアプリケーション間でdllを共有することは可能ですか?
- 11. asp.net mvcアプリケーションとasp.net Webアプリケーションの違いは何ですか
- 12. AndroidアプリケーションがCで非アンドロイドアプリケーションとUIDを共有することは可能です
- 13. vncサーバの画面をクライアントと共有することは可能ですか?
- 14. C#WindowsサービスをASP.NET Webアプリケーションに参照することは可能ですか?
- 15. SilverlightアプリケーションでF5をキャッチすることは可能ですか?
- 16. ブロードキャストをアプリケーションに適用することは可能ですか?
- 17. ipadアプリケーションをrelauchesすることは可能ですか?
- 18. アプリケーションをdrupalモジュールにすることは可能ですか?
- 19. ASP.NET 2.0とASP.NET 4.0アプリケーション間でセッションを共有できますか?
- 20. iphoneアプリケーションをWindows Phone 7アプリケーションに変換することは可能ですか
- 21. ハスケルでの共有を検出することは可能ですか?
- 22. 別のMVCフレームワークを使用するためにSpring MVCアプリケーションをリファクタリングすることは可能ですか?
- 23. asp.net mvcアプリケーションとアップロードファイル
- 24. AIRアプリケーションに "nag"を付けることは可能ですか?
- 25. gitでLANでXcodeプロジェクトを共有することは可能ですか
- 26. ASP.NET MVC - FORMSルートプロジェクトにMVCサブプロジェクトを含めることは可能ですか?
- 27. キュウリ - シナリオ間でテーブルを共有することは可能ですか?
- 28. Googleドライブでアプリケーションデータを共有することは可能ですか?
- 29. Windowsサービスアプリケーションは、binフォルダをWebアプリケーションと共有できますか?
- 30. ASP.Net MVCアプリケーションのコントローラレベルでsslをオフにすることはできますか?
はいがあるはずです。実際の問題はIIS/ASP.NETが作成するデータを共有することです(instの認証/セッション)。 ... – Dave
認証を共有するより良い方法は、Oauth 2を使用することです。Google、Facebook、Twitter、多くのインターネット企業がこの方法で認証します。 oauthプロバイダを実装する必要があります。 – barbolo