diff --git a/.idea/workspace.xml b/.idea/workspace.xml index ff80ff0..8412ee9 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -24,34 +24,6 @@ <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" /> <component name="FileEditorManager"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> - <file leaf-file-name="AccountTask.java" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/src/main/java/track/task/AccountTask.java"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="391"> - <caret line="28" column="56" lean-forward="false" selection-start-line="28" selection-start-column="56" selection-end-line="28" selection-end-column="56" /> - <folding> - <element signature="imports" expanded="false" /> - </folding> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="ContractController.java" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/src/main/java/common/controller/ContractController.java"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="598"> - <caret line="39" column="22" lean-forward="false" selection-start-line="39" selection-start-column="22" selection-end-line="39" selection-end-column="22" /> - <folding> - <element signature="imports" expanded="false" /> - <element signature="e#1721#1722#0" expanded="false" /> - <element signature="e#1778#1779#0" expanded="false" /> - <element signature="e#2760#2761#0" expanded="false" /> - <element signature="e#2817#2818#0" expanded="false" /> - </folding> - </state> - </provider> - </entry> - </file> <file leaf-file-name="AccountFlowRestrictService.java" pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/src/main/java/tkio/service/AccountFlowRestrictService.java"> <provider selected="true" editor-type-id="text-editor"> @@ -79,8 +51,28 @@ <file leaf-file-name="AuthorizationInterceptor.java" pinned="false" current-in-tab="true"> <entry file="file://$PROJECT_DIR$/src/main/java/security/interceptor/AuthorizationInterceptor.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="229"> - <caret line="57" column="39" lean-forward="true" selection-start-line="57" selection-start-column="39" selection-end-line="57" selection-end-column="39" /> + <state relative-caret-position="159"> + <caret line="73" column="13" lean-forward="true" selection-start-line="73" selection-start-column="13" selection-end-line="73" selection-end-column="13" /> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ResultStatus.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/src/main/java/util/ResultStatus.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="322"> + <caret line="14" column="41" lean-forward="true" selection-start-line="14" selection-start-column="41" selection-end-line="14" selection-end-column="41" /> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="LoginController.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/src/main/java/common/controller/LoginController.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="389"> + <caret line="100" column="17" lean-forward="true" selection-start-line="100" selection-start-column="17" selection-end-line="100" selection-end-column="17" /> <folding /> </state> </provider> @@ -509,6 +501,10 @@ <option name="myItemId" value="java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="util" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -711,6 +707,28 @@ <option name="myItemId" value="java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="manager" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="manager" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="main" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> <PATH_ELEMENT> <option name="myItemId" value="security" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> @@ -772,6 +790,36 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="manager" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="manager" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="main" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="common" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="controller" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> </subPane> </pane> <pane id="Scope" /> @@ -793,18 +841,18 @@ <property name="settings.editor.selected.configurable" value="preferences.lookFeel" /> </component> <component name="RecentsManager"> - <key name="CopyFile.RECENT_KEYS"> - <recent name="E:\newgit\manager\src\main\resources" /> + <key name="MoveFile.RECENT_KEYS"> + <recent name="$PROJECT_DIR$/src/main/resources/spring" /> </key> <key name="CopyClassDialog.RECENTS_KEY"> + <recent name="util" /> <recent name="track.repository" /> <recent name="track.service.impl" /> <recent name="track.service" /> <recent name="common.repository" /> - <recent name="common.model" /> </key> - <key name="MoveFile.RECENT_KEYS"> - <recent name="$PROJECT_DIR$/src/main/resources/spring" /> + <key name="CopyFile.RECENT_KEYS"> + <recent name="E:\newgit\manager\src\main\resources" /> </key> </component> <component name="RunManager" selected="Maven.manager"> @@ -1268,14 +1316,7 @@ <workItem from="1516843795236" duration="8291000" /> <workItem from="1516932422302" duration="5866000" /> <workItem from="1517189406074" duration="8333000" /> - <workItem from="1517275427548" duration="714000" /> - </task> - <task id="LOCAL-00009" summary="test pom"> - <created>1514875024148</created> - <option name="number" value="00009" /> - <option name="presentableId" value="LOCAL-00009" /> - <option name="project" value="LOCAL" /> - <updated>1514875024148</updated> + <workItem from="1517275427548" duration="1417000" /> </task> <task id="LOCAL-00010" summary="test pom"> <created>1514876898440</created> @@ -1613,11 +1654,18 @@ <option name="project" value="LOCAL" /> <updated>1516956566595</updated> </task> - <option name="localTasksCounter" value="58" /> + <task id="LOCAL-00058" summary="合同"> + <created>1517282095150</created> + <option name="number" value="00058" /> + <option name="presentableId" value="LOCAL-00058" /> + <option name="project" value="LOCAL" /> + <updated>1517282095151</updated> + </task> + <option name="localTasksCounter" value="59" /> <servers /> </component> <component name="TimeTrackingManager"> - <option name="totallyTimeSpent" value="287000000" /> + <option name="totallyTimeSpent" value="287703000" /> </component> <component name="ToolWindowManager"> <frame x="-8" y="-8" width="1382" height="744" extended-state="0" /> @@ -1778,13 +1826,6 @@ <option name="FILTER_TARGETS" value="false" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/src/main/java/common/model/PriceLevelMoney.java"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="299"> - <caret line="16" column="0" lean-forward="true" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/src/main/java/common/repository/PriceLevelMoneyRepository.java"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="115"> @@ -1925,13 +1966,6 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/main/java/common/controller/LoginController.java"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="102"> - <caret line="49" column="25" lean-forward="true" selection-start-line="49" selection-start-column="25" selection-end-line="49" selection-end-column="25" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/src/main/resources/logback/product/logback.xml"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="138"> @@ -1965,6 +1999,7 @@ <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="230"> <caret line="13" column="23" lean-forward="false" selection-start-line="13" selection-start-column="23" selection-end-line="13" selection-end-column="23" /> + <folding /> </state> </provider> </entry> @@ -2181,10 +2216,26 @@ </state> </provider> </entry> + <entry file="file://$PROJECT_DIR$/src/main/java/common/controller/LoginController.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="389"> + <caret line="100" column="17" lean-forward="true" selection-start-line="100" selection-start-column="17" selection-end-line="100" selection-end-column="17" /> + <folding /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/src/main/java/util/ResultStatus.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="322"> + <caret line="14" column="41" lean-forward="true" selection-start-line="14" selection-start-column="41" selection-end-line="14" selection-end-column="41" /> + <folding /> + </state> + </provider> + </entry> <entry file="file://$PROJECT_DIR$/src/main/java/security/interceptor/AuthorizationInterceptor.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="229"> - <caret line="57" column="39" lean-forward="true" selection-start-line="57" selection-start-column="39" selection-end-line="57" selection-end-column="39" /> + <state relative-caret-position="159"> + <caret line="73" column="13" lean-forward="true" selection-start-line="73" selection-start-column="13" selection-end-line="73" selection-end-column="13" /> <folding /> </state> </provider> diff --git a/src/main/java/security/interceptor/AuthorizationInterceptor.java b/src/main/java/security/interceptor/AuthorizationInterceptor.java index f65d018..98f44c3 100644 --- a/src/main/java/security/interceptor/AuthorizationInterceptor.java +++ b/src/main/java/security/interceptor/AuthorizationInterceptor.java @@ -1,19 +1,26 @@ package security.interceptor; +import com.fasterxml.jackson.databind.ObjectMapper; import common.model.User; import common.repository.UserRepository; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import security.RedisLoginStatusManager; import security.TokenManager; import util.Constant; +import util.ResultModel; +import util.ResultStatus; import util.StringUtil; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.BufferedWriter; +import java.io.OutputStreamWriter; import java.util.Enumeration; public class AuthorizationInterceptor extends HandlerInterceptorAdapter { @@ -64,6 +71,17 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter { } return true; } + try { + //如果验证token失败,并且方法注明了Authorization,返回401错误 + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(response.getOutputStream())); + response.setContentType(MediaType.APPLICATION_JSON_VALUE); + String json = new ObjectMapper().writeValueAsString(ResultModel.ERROR(ResultStatus.USERNAME_LOGIN_EXPIRE)); + writer.write(json); + writer.close(); + } catch (Exception e){ + e.printStackTrace(); + } return false; }