คำถามนี้คือความต้องการที่พบเมื่อคุณเข้าสู่โมดูลลงทะเบียนก่อนหน้านี้ เนื่องจากการหมดเวลาเซสชันผู้ใช้จำเป็นต้องเข้าสู่ระบบอีกครั้งจากนั้นหน้าก่อนหน้าการกระโดดกลับไปที่หน้าก่อนหน้าคือสิ่งที่ปรับปรุงประสบการณ์ของผู้ใช้ วิธีที่ดีกว่าในการใช้ฟังก์ชั่นนี้คือการเข้าสู่ระบบโดย AJAX เพื่อให้หน้าต่างป๊อปอัพสามารถเข้าสู่ระบบได้โดยตรงบนหน้าต่างหน้าป๊อปอัพปัจจุบัน ให้ฉันแบ่งปันกับคุณผ่านรหัสชิ้นหนึ่ง:
โครงการรวม Shiro ซึ่งมีฟังก์ชั่นดังกล่าวเพื่อป้องกันเครื่องมือ webutils
ในความเป็นจริงแล้วบางคนได้เขียนโพสต์บล็อกดังกล่าวเกี่ยวกับฟังก์ชั่นนี้
SavedRequest SavedRequest = WebUtils.getSavedRequest (คำขอ); ใน shirofilter haindefinitions ที่ URL ที่ต้องดักจับไม่ได้เขียนอย่างสมบูรณ์เช่นการกำหนดค่าด้านล่าง
<!-Web Filter ของ Shiro-> <Bean ID = "Shirofilter"> <ชื่อคุณสมบัติ = "SecurityManager" ref = "SecurityManager" /> <property name = "loginurl" = " /c ooka-user-web /> /> /> <property name = "unauthorizedUrl" value = " /unauthorized" /> <property name = "ตัวกรอง"> <util: map> <entry key = "Authc"> <ben /> /entry> < /util: แผนที่ > </perty> <property name = "FilterChainDefinitions"> <value> # ไฟล์ที่สามารถเข้าถึงได้โดยไม่ต้องมีการรับรองความถูกต้องจะถูกวางไว้ที่ด้านหน้า/js/* = anon/css/* = amg/* = anon/images/* = anon/user-web/login = anon/logout = logout/user-weight/* = authc/backend-web/* = authc </value> </ebean> </ebean>
เฉพาะ/ผู้ใช้-web/* (ยกเว้นการเข้าสู่ระบบกลไกการลัดวงจรของ URL ตรงกับที่นี่นั่นคือหลักการจับคู่แรก) และ URL ที่อยู่ด้านหลัง/back-weight เมื่อเข้าสู่ระบบเมื่อคุณเยี่ยมชมสองลิงค์ด้านบนคำนำหน้า คุณจะข้ามไปยังอินเทอร์เฟซก่อนหน้าหลังจากการเข้าสู่ระบบสำเร็จ
เนื้อหาข้างต้นได้รับการแนะนำในบทความนี้ฉันหวังว่าจะช่วยทุกคน