我想能夠在asp.net mvc應用程序和python/django應用程序之間共享一些數據。我想分享的數據類型是驗證或會話數據。是否可以共享來自asp.net mvc應用程序和python應用程序的會話數據?
回答
只要您訪問兩個框架之間的某些共享資源,這當然可能是。這可能有幾種方式,但最明顯的一種方法是使用一些共享的後備存儲,即。數據庫或甚至可能更快的memcached。我不是一個Django的用戶,但據我所知memcached是支持它...
當然有一個更復雜的情況與此有關,這是數據兼容性。您可能必須使用兩種框架都可以理解的可互換格式。 XML,JSON,BSON或類似的。所以即使使用memcached,你也必須這樣做翻譯。
在MS SQL Server數據庫中有一個用於存儲會話狀態的選項,該選項可用於開箱即用。使用下一個kb http://support.microsoft.com/kb/317604 的步驟更多的是關於配置,而不是實現。 您可以編寫自己的自定義存儲提供程序,但是有什麼原因嗎?
我不熟悉Python,但至少有ODBC驅動它 http://wiki.python.org/moin/SQL%20Server
我將如何共享會話...
使會話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」cookie並允許共享修改值。
我想知道你將這個邏輯放在asp.net mvc的哪個位置?你會加入一些IIS模塊嗎? – Dave 2012-03-22 00:03:18
我會建議使用一個共享的數據庫下面的方法(可能是一個共享的高速緩存或其他任何數據存儲):
- 當用戶在您的域名訪問你的應用程序之一,你創建的一個cookie鍵「_shared_session」和由應用程序生成的隨機字符串的值;
- 保存這個cookie到數據庫中的值,並將它涉及到一個JSON對象抱着你想要的應用程序之間共享數據;
- 當用戶訪問其他應用程序時,您將驗證包含鍵「_shared_session」的cookie是否存在並讀取其值;
- 使用cookie的值,您可以檢索共享的JSON對象。
快速回答:應該有一個過濾器,尋找一個共同的cookie創建一個新的會話
- 1. 是否可以共享應用程序數據文件?
- 2. 應用程序和共享會話之間的共享DLL
- 3. Sinatra應用程序共享會話值?
- 4. 是否可以在跨不同應用程序的子域共享會話?
- 5. 如何在PHP和ASP.net應用程序之間共享會話?
- 6. 在應用程序和webview內的應用程序共享會話 - IOS的Swift
- 7. 在MVC和WCF應用程序中共享ASP.Net應用程序緩存
- 8. 是否可以在iOS應用程序和Android應用程序之間輕鬆共享數據?
- 9. PHP阻止應用程序之間的會話數據共享
- 10. 不同的應用程序共享相同的ASP.Net會話Cookie
- 11. 在Node.js應用程序和Rails應用程序之間共享會話
- 12. 跨ASP.NET MVC應用程序共享數據
- 13. 跨多個Web應用程序的Asp.Net共享會話?
- 14. 單獨的ASP.NET應用程序,共享會話?
- 15. 在單個應用程序池和工作進程中的應用程序之間共享ASP.NET會話信息
- 16. asp.net會話共享兩個應用程序(vb)
- 17. 應用程序與MVC虛擬應用程序共享AuthCookie
- 18. 什麼是ASP.NET MVC應用程序中的共享狀態?
- 19. 是否可以共享谷歌驅動器上的應用程序數據
- 20. 不同的OPA應用程序可以共享數據庫嗎?
- 21. 是否有可能在Asp.NET Web應用程序和Silverlight商業應用程序之間共享身份驗證
- 22. 在應用程序內共享數據
- 23. 與heroku應用程序共享數據
- 24. C#應用程序和asp.NET會話
- 25. 是否可以將應用程序添加到本機共享對話框?
- 26. ASP.NET MemoryCache在應用程序間共享
- 27. 通過幾個應用程序共享會話(不是活動!)
- 28. iOS應用程序可以共享數據嗎?
- 29. 兩個Metro應用程序可以在WinRT中共享數據
- 30. 是否可以在Mono上運行ASP.NET MVC 3應用程序?
是的,這是我腦子裏想的太多了。我實際上更感興趣的是一個更實際的例子,因爲我真正的問題是共享IIS/ASP.NET在底層創建的數據(驗證/會話爲inst)。它是否需要創建一個模塊,以便安裝... – Dave 2012-03-16 03:02:21
更好的共享身份驗證方法是使用Oauth 2. Google,Facebook,Twitter和許多互聯網公司都以此方式進行身份驗證。您需要實施oauth提供程序。 – barbolo 2012-03-21 22:28:40