Commit 3042f0e6 authored by Liang Ding's avatar Liang Ding

🎨 #12932 Cookie

parent 8807c670
...@@ -117,7 +117,6 @@ public class OAuthProcessor { ...@@ -117,7 +117,6 @@ public class OAuthProcessor {
connectionTimeout(3000).timeout(7000).header("User-Agent", Solos.USER_AGENT).send(); connectionTimeout(3000).timeout(7000).header("User-Agent", Solos.USER_AGENT).send();
if (200 != res.statusCode()) { if (200 != res.statusCode()) {
LOGGER.log(Level.ERROR, "Gets oauth client id failed: " + res.toString()); LOGGER.log(Level.ERROR, "Gets oauth client id failed: " + res.toString());
context.sendError(404); context.sendError(404);
return; return;
......
...@@ -42,6 +42,7 @@ import org.json.JSONObject; ...@@ -42,6 +42,7 @@ import org.json.JSONObject;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
/** /**
...@@ -140,7 +141,7 @@ public class StatisticMgmtService { ...@@ -140,7 +141,7 @@ public class StatisticMgmtService {
*/ */
public static boolean hasBeenServed(final RequestContext context, final Response response) { public static boolean hasBeenServed(final RequestContext context, final Response response) {
final Request request = context.getRequest(); final Request request = context.getRequest();
final List<Cookie> cookies = request.getCookies(); final Set<Cookie> cookies = request.getCookies();
if (cookies.isEmpty()) { if (cookies.isEmpty()) {
return false; return false;
} }
......
...@@ -249,7 +249,7 @@ public final class Skins { ...@@ -249,7 +249,7 @@ public final class Skins {
final Set<String> skinDirNames = Skins.getSkinDirNames(); final Set<String> skinDirNames = Skins.getSkinDirNames();
boolean isMobile = Solos.isMobile(request); boolean isMobile = Solos.isMobile(request);
String skin = null, mobileSkin = null; String skin = null, mobileSkin = null;
final List<Cookie> cookies = request.getCookies(); final Set<Cookie> cookies = request.getCookies();
if (!cookies.isEmpty()) { if (!cookies.isEmpty()) {
for (final Cookie cookie : cookies) { for (final Cookie cookie : cookies) {
if (Common.COOKIE_NAME_SKIN.equals(cookie.getName()) && !isMobile) { if (Common.COOKIE_NAME_SKIN.equals(cookie.getName()) && !isMobile) {
......
...@@ -23,10 +23,7 @@ import org.apache.commons.lang.RandomStringUtils; ...@@ -23,10 +23,7 @@ import org.apache.commons.lang.RandomStringUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.http.Cookie; import org.b3log.latke.http.*;
import org.b3log.latke.http.Request;
import org.b3log.latke.http.RequestContext;
import org.b3log.latke.http.Response;
import org.b3log.latke.ioc.BeanManager; import org.b3log.latke.ioc.BeanManager;
import org.b3log.latke.logging.Level; import org.b3log.latke.logging.Level;
import org.b3log.latke.logging.Logger; import org.b3log.latke.logging.Logger;
...@@ -43,9 +40,7 @@ import org.b3log.solo.model.UserExt; ...@@ -43,9 +40,7 @@ import org.b3log.solo.model.UserExt;
import org.b3log.solo.repository.UserRepository; import org.b3log.solo.repository.UserRepository;
import org.json.JSONObject; import org.json.JSONObject;
import java.util.List; import java.util.*;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
/** /**
* Solo utilities. * Solo utilities.
...@@ -248,7 +243,7 @@ public final class Solos { ...@@ -248,7 +243,7 @@ public final class Solos {
* @return the current logged-in user, returns {@code null} if not found * @return the current logged-in user, returns {@code null} if not found
*/ */
public static JSONObject getCurrentUser(final Request request, final Response response) { public static JSONObject getCurrentUser(final Request request, final Response response) {
final List<Cookie> cookies = request.getCookies(); final Set<Cookie> cookies = request.getCookies();
if (cookies.isEmpty()) { if (cookies.isEmpty()) {
return null; return null;
} }
...@@ -388,18 +383,17 @@ public final class Solos { ...@@ -388,18 +383,17 @@ public final class Solos {
return true; return true;
} }
// TODO: session final Session session = request.getSession();
// final HttpSession session = request.getSession(); if (null != session) {
// if (null != session) { Map<String, String> viewPwds = (Map<String, String>) session.getAttribute(Common.ARTICLES_VIEW_PWD);
// Map<String, String> viewPwds = (Map<String, String>) session.getAttribute(Common.ARTICLES_VIEW_PWD); if (null == viewPwds) {
// if (null == viewPwds) { viewPwds = new HashMap<>();
// viewPwds = new HashMap<>(); }
// }
// if (articleViewPwd.equals(viewPwds.get(article.optString(Keys.OBJECT_ID)))) {
// if (articleViewPwd.equals(viewPwds.get(article.optString(Keys.OBJECT_ID)))) { return false;
// return false; }
// } }
// }
final Response response = context.getResponse(); final Response response = context.getResponse();
final JSONObject currentUser = getCurrentUser(request, response); final JSONObject currentUser = getCurrentUser(request, response);
......
...@@ -26,7 +26,7 @@ import org.b3log.solo.util.Solos; ...@@ -26,7 +26,7 @@ import org.b3log.solo.util.Solos;
import org.testng.Assert; import org.testng.Assert;
import org.testng.annotations.Test; import org.testng.annotations.Test;
import java.util.List; import java.util.Set;
/** /**
* {@link IndexProcessor} test case. * {@link IndexProcessor} test case.
...@@ -100,9 +100,10 @@ public class IndexProcessorTestCase extends AbstractTestCase { ...@@ -100,9 +100,10 @@ public class IndexProcessorTestCase extends AbstractTestCase {
final MockResponse response = mockResponse(); final MockResponse response = mockResponse();
mockDispatcher(request, response); mockDispatcher(request, response);
final List<Cookie> cookies = response.getCookies(); final Set<Cookie> cookies = response.getCookies();
Assert.assertEquals(cookies.size(), 1); Assert.assertEquals(cookies.size(), 1);
Assert.assertEquals(cookies.get(0).getName(), Solos.COOKIE_NAME); final Cookie first = cookies.iterator().next();
Assert.assertNull(cookies.get(0).getValue()); Assert.assertEquals(first.getName(), Solos.COOKIE_NAME);
Assert.assertNull(first.getValue());
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment