2017-08-24 199 views
2

有一個http會話的新實現,用於彈簧新反應性網絡通量api位於here。 我想將最新的春季網絡課程整合到新的彈簧反應性網絡通量中。我似乎無法得到它,我試圖注入它作爲一個bean,但它不起作用。我想注入像我一般的HttpSession做集成彈簧Websession與彈簧反應性網絡通量

@Autowired 
Websession webSession; 

回答

1

因爲Spring WebFlux是一種反應性的web框架,你不能指望Web會話將被注入作爲一個bean(甚至在請求範圍內)。在Servlet世界中,每個請求/響應都在單個線程中處理,這使得這些方法(即「請求」範圍)成爲可能。藉助WebFlux,給定的請求可以由多個線程處理。

與當前請求/響應關聯的WebSession實例實際上附加到ServerWebExchange(請參閱getSession)。由於反應式編程模型的本質,您很可能會在Reactor操作員中訪問該會話 - 因此您無法期望在您的應用程序的其他位置注入此實例。

+0

我想能夠設置會話對象中的一些參數,就像我用春天的網頁MVC,但它似乎這是不可能的網絡流量 –

+1

這是有點模糊;您可以將屬性添加到WebSession。隨意創建一個新的問題,說明你到底想做什麼以及你嘗試過什麼。從用例開始通常是一個好方法。 –