spring的issue前端
https://github.com/spring-projects/spring-session/issues/954
原答案是 Updated my codes to 2.0.0.RELEASE 但好像沒什麼用。vue
spring整合了SpringSecurity,原本若是直接瀏覽器訪問接口沒問題,可是,前端使用vue訪問就會出現git
Error: no such key
原本沒什麼事,後來發現vue的同一個頁面下,單獨一個請求沒問題,但若是屢次請求就出現接口報錯的狀況,找到了上訴答案。github
由於是spring整合了spring Security,在原答案中看到,每次檢查原session的時候若是不存在的話,就會建立新的session ,就想直接把security的session禁用掉試試怎麼樣,沒想到成功了😄web
貼下security的配置,將security的session管理禁用掉,而且從原有的session中獲取就好了。spring
package com.zjzc.crm.security.config; import org.springframework.context.annotation.Configuration; import org.springframework.core.annotation.Order; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.http.SessionCreationPolicy; /** * spring-security配置 * */ @Configuration @Order(99) public class WebSecurityConfig extends AbstractWebSecurityConfig { @Override protected void configure(HttpSecurity security) throws Exception { /** * always – 若是session不存在老是須要建立; * ifRequired – 僅當須要時,建立session(默認配置); * never – 框架從不建立session,但若是已經存在,會使用該session ; * stateless – Spring Security不會建立session,或使用session; * --------------------- * 做者:neweastsun * 來源:CSDN * 原文:https://blog.csdn.net/neweastsun/article/details/79371175 * 版權聲明:本文爲博主原創文章,轉載請附上博文連接! */ security.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.NEVER); /* * "migrateSession",即認證時,建立一個新http session,原session失效,屬性從原session中拷貝過來 * 「none」,原session保持有效; * 「newSession」,新建立session,且不從原session中拷貝任何屬性。 */ security.sessionManagement().sessionFixation().none(); security .authorizeRequests() .antMatchers( "/login/**","/validate/**","/sys/user/resetPWD","/claim/fileUpload").permitAll();//權限不校驗的接口 super.configure(security); } }