xuexb vor 6 Jahren
Ursprung
Commit
95c7443cb8

+ 25 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/configure/CustomSessionDefaultRedisSerializer.java

@@ -0,0 +1,25 @@
+package cn.iselab.mooctest.user.configure;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
+
+/**
+ * @Description: 作用描述
+ * @Author: xuexb
+ * @CreateDate: 19-1-28$ 下午4:36$
+ */
+public class CustomSessionDefaultRedisSerializer extends JdkSerializationRedisSerializer {
+    private static final Logger LOG = LoggerFactory.getLogger(CustomSessionDefaultRedisSerializer.class);
+
+    @Override
+    public Object deserialize(byte[] bytes) {
+        Object deserialObj = null;
+        try {
+            deserialObj = super.deserialize(bytes);
+        }catch (Exception e){
+            LOG.warn("deserialize session Object error!", e);
+        }
+        return deserialObj;
+    }
+}

+ 18 - 0
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/configure/RedisSessionConfiguration.java

@@ -1,7 +1,11 @@
 package cn.iselab.mooctest.user.configure;
 
+import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.serializer.RedisSerializer;
 import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
+import org.springframework.session.web.http.CookieSerializer;
+import org.springframework.session.web.http.DefaultCookieSerializer;
 
 /**
  * @Description: 作用描述
@@ -11,4 +15,18 @@ import org.springframework.session.data.redis.config.annotation.web.http.EnableR
 @Configuration
 @EnableRedisHttpSession
 public class RedisSessionConfiguration {
+    @Bean
+    public CookieSerializer cookieSerializer() {
+        DefaultCookieSerializer serializer = new DefaultCookieSerializer();
+        serializer.setCookieName("JSESSIONID");
+        serializer.setCookiePath("/");
+        serializer.setDomainNamePattern("^.+?\\.(\\w+\\.[a-z]+)$");
+        return serializer;
+    }
+
+    @Bean
+    RedisSerializer<Object> springSessionDefaultRedisSerializer() {
+        return new CustomSessionDefaultRedisSerializer();
+    }
+
 }

+ 6 - 3
mooctest-user-server/src/main/java/cn/iselab/mooctest/user/web/ctrl/PageController.java

@@ -22,6 +22,8 @@ import org.springframework.web.bind.annotation.*;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpSession;
+import java.net.URL;
+import java.net.URLDecoder;
 
 /**
  * @Author: xuexb
@@ -60,10 +62,10 @@ public class PageController extends BaseController{
 //            return "redirect:"+afterLogin;
 //        }
 //        return "login";
-
+        LOG.info("redirect:" + redirect);
         String redirectUrl = "";
         try {
-            redirectUrl = EncryptionUtil.decryptDES(redirect);
+            redirectUrl = URLDecoder.decode(redirect, "UTF-8");
         } catch (Exception e) {
             LOG.error("redirectUrl 解码出错", e);
             redirectUrl = null;
@@ -72,7 +74,7 @@ public class PageController extends BaseController{
             redirectUrl = UrlConstants.DFAULT_GOTO;
         }
         HttpSession session = request.getSession();
-        session.setAttribute("RedirectUrl", redirectUrl);
+        session.setAttribute("redirectURL", redirectUrl);
         LOG.info("RedirectUrl" + redirectUrl);
         if (session.getAttribute("userId") != null){
             LOG.info("用户已登录!用户ID"+session.getAttribute("userId").toString());
@@ -90,6 +92,7 @@ public class PageController extends BaseController{
         if (result.getStatus() == ResponseStatus.SUCCESS) {
             HttpSession session = request.getSession();
             session.setAttribute("userId", ((UserDTO)result.getData()).getId());
+            session.setAttribute("userName", ((UserDTO)result.getData()).getEmail());
             // return "redirect:http://www.mooctest.net/api/test/login";
             String afterLogin = session.getAttribute("redirectURL")==null?
                     UrlConstants.DFAULT_GOTO:(String)session.getAttribute("redirectURL");

+ 4 - 2
mooctest-user-server/src/main/resources/application.yaml

@@ -29,14 +29,16 @@ spring:
         cache: false
 #        enabled: true
     redis:
-        host: 114.55.91.27
+#        host: 114.55.91.27
         port: 6379
         pool:
             max-idle: 8
             min-idle: 0
             max-wait: -1
             max-active: 8
-#    session:
+        database: 2
+        host: localhost
+#    session:``
 #        stroe-type: redis