defaultSuccessUrl和successForwardUrl與failureForwardUrl和failureUrl跳轉(zhuǎn)遇到的錯誤總結(jié)

一、錯誤代碼

1.首先我的結(jié)構(gòu)很簡單


首先實(shí)現(xiàn)登錄處理邏輯UserDetailServiceImpl 胁附,設(shè)置用戶名為admin ,固定密碼為123

`java`

@Service

public class UserDetailServiceImpl implements UserDetailsService {

@Autowired

private PasswordEncoder passwordEncoder;

@Override

public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {

//1.根據(jù)用戶名去數(shù)據(jù)庫查詢,如果不存在拋出UsernameNotFoundException異常

if (!"admin".equals(username)){

throw? new UsernameNotFoundException("用戶名不存在");

}

//2.比較密碼(注冊時已經(jīng)加密過),若匹配成功返回UserDetails

//User類是UserDetailServiceImpl的實(shí)現(xiàn)類弹囚,其需要在表單中輸入的用戶名,密碼领曼,和權(quán)限

String password = passwordEncoder.encode("123");

return new User(username,password, AuthorityUtils.commaSeparatedStringToAuthorityList("admin,normal"));

}

}

在進(jìn)行Security配置 SecurityConfig 時鸥鹉,設(shè)置登錄成功跳轉(zhuǎn)頁面和登錄失敗跳轉(zhuǎn)頁面報錯

@Configuration

public class SecurityConfig extends WebSecurityConfigurerAdapter {

@Override

protected void configure(HttpSecurity http) throws Exception {

http.formLogin()

.loginPage("/login")


? ? ? ? ? ? ? ? //tologin和toError都做了跳轉(zhuǎn)

.loginProcessingUrl("/tologin")


//.defaultSuccessUrl("/main")

? ? ? ? ? ? ? ? .successForwardUrl("/main")

.failureForwardUrl("/toError");

? ? ? ? ? ? ? ? //.failureUrl("/error.html");


http.csrf().disable();

? ? ? ? //設(shè)置放行

http.authorizeRequests()

.antMatchers("/login").permitAll()

.antMatchers("/error.html").permitAll()

.antMatchers("/toError").permitAll()

.anyRequest().authenticated();

}

@Bean

public PasswordEncoder getPw(){

return new BCryptPasswordEncoder();

}

}

二、錯誤展示

1.設(shè)置登錄成功跳轉(zhuǎn)頁面:

.loginProcessingUrl("/tologin")

2.在LoginControoler設(shè)置相應(yīng)的跳轉(zhuǎn)配置(后綴已經(jīng)配置為.html)

@RequestMapping("/login")

public String login()

{

return "login";

}

3.貼一個表單代碼

<form action="/tologin" method="post">

? ? ? ? <!--//本來在表單的用戶名和密碼的name屬性都是固定的username和password庶骄,但可以自定義入?yún)?/p>

.usernameParameter("username123")

.passwordParameter("password123")-->

? ? ? ? 用戶名:<input type="text" name="username123"/> <br/>

? ? ? ? 密碼:<input type="password" name="password123"/><br/>

? ? ? ? <input type="submit" value="登錄"/>

? ? </form>

到這里本來表單提交/tologin路徑毁渗,交給loginProcessingUrl中轉(zhuǎn)后判斷是否成功,若成功就進(jìn)入/toMain单刁,再進(jìn)控制器跳轉(zhuǎn)灸异。本應(yīng)該尋到main.html之后顯示登陸成功。

結(jié)果


并且報錯

.w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported]

大概意思就是不支持post請求羔飞。

我很疑惑肺樟,去查驗(yàn)資料

1.loginProcessingUrl? 與? successForwardUrl 使用post請求

2.registry.addViewController("/success").setViewName(“success”);這種路徑映射方式不支持post請求

3.重定向和轉(zhuǎn)發(fā)的區(qū)別:其中之一的區(qū)別是,重定向?yàn)g覽器地址欄會發(fā)生變化,為重定向路徑(/seccess),請求類型相應(yīng)的為/seccess的類型為get;轉(zhuǎn)發(fā)瀏覽器地址欄不會發(fā)生變化,還是登錄處理請求路徑(/doLogin),所以相應(yīng)的請求類型為post,所以就產(chǎn)生了異常逻淌。

并進(jìn)行了試錯


可知若想使用loginProcessingUrl? 與? successForwardUrl

1.則表單提交必須為post請求

2.不用addViewController的方式,而是寫一個controller,在控制器里進(jìn)行路徑映射

3.在映射時使用redirect:/xxx 么伯,進(jìn)行重定向,且直接指定到資源.html,或再次進(jìn)行映射

csdn鏈接:https://blog.csdn.net/qq_48826531/article/details/119278065

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末卡儒,一起剝皮案震驚了整個濱河市田柔,隨后出現(xiàn)的幾起案子俐巴,更是在濱河造成了極大的恐慌,老刑警劉巖硬爆,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件欣舵,死亡現(xiàn)場離奇詭異,居然都是意外死亡摆屯,警方通過查閱死者的電腦和手機(jī)邻遏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來虐骑,“玉大人准验,你說我怎么就攤上這事⊥⒚唬” “怎么了糊饱?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長颠黎。 經(jīng)常有香客問我另锋,道長,這世上最難降的妖魔是什么狭归? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任夭坪,我火速辦了婚禮,結(jié)果婚禮上过椎,老公的妹妹穿的比我還像新娘室梅。我一直安慰自己,他們只是感情好疚宇,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布亡鼠。 她就那樣靜靜地躺著,像睡著了一般敷待。 火紅的嫁衣襯著肌膚如雪间涵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天榜揖,我揣著相機(jī)與錄音勾哩,去河邊找鬼。 笑死举哟,一個胖子當(dāng)著我的面吹牛思劳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播炎滞,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼敢艰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了册赛?” 一聲冷哼從身側(cè)響起钠导,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤震嫉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后牡属,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體票堵,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年逮栅,在試婚紗的時候發(fā)現(xiàn)自己被綠了悴势。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡措伐,死狀恐怖特纤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情侥加,我是刑警寧澤捧存,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站担败,受9級特大地震影響昔穴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜提前,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一吗货、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧狈网,春花似錦宙搬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽扇雕。三九已至拓售,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間镶奉,已是汗流浹背础淤。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哨苛,地道東北人鸽凶。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像建峭,于是被迫代替她去往敵國和親玻侥。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容