在HTML中用<input id="urlcontext" type="hidden" th:value="@{/}" /> 時會發現獲得的連接會是 " /項目名/;jsessionid=xxxxxxxxxxxxxxxxxxxx" 這樣的形式,這樣再去拼接連接訪問就會報錯。web
在啓動類上繼承 SpringBootServletInitializer 類,而後重寫 onStartup 方法:spring
public void onStartup(ServletContext servletContext) throws ServletException{ super.onStartup(servletContext); servletContext.setSessionTrackingModes(Collections.singleton(SessionTrackingMode.COOKIE)); SessionCookieConfig sessionCookieConfig = servletContext.getSessionCookieConfig(); sessionCookieConfig.setHttpOnly(true); }
這樣就能夠解決URL中出現的jsessionid的問題。cookie
而後有個問題是session
我在spring boot 2.0.0 RELEASE版本中使用內嵌Tomcat啓動時,在application.yml中增長以下:app
server: session: tracking-modes: cookie
發現不生效,org.springframework.boot.autoconfigure.web.ServerProperties 這個類也沒有trackingModes這個屬性。若是有人知道緣由,望能在評論中告知,不勝感激。url