Skip to content

Commit d687717

Browse files
zhanglongzhanglong
authored andcommitted
增加跨域请求
1 parent 23aefa6 commit d687717

File tree

7 files changed

+80
-29
lines changed

7 files changed

+80
-29
lines changed

src/main/java/com/cetc/TokenInterceptor.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,17 @@ public boolean preHandle(HttpServletRequest request, HttpServletResponse respons
4141
startTimeThreadLocal.set(beginTime);// 线程绑定变量(该数据只有当前请求的线程可见)
4242
String reqJson = "";
4343
String getReqParm = "";
44+
45+
//增加跨域请求
46+
if(request.getHeader("Origin")!=null&&
47+
(request.getHeader("Origin").equals("http://localhost:8000")||
48+
request.getHeader("Origin").equals("http://10.111.10.42:8000"))
49+
){
50+
logger.debug("需要跨域请求{}", request.getRequestURI());
51+
response.setHeader("Access-Control-Allow-Origin",request.getHeader("Origin"));
52+
};
53+
54+
4455
if (request.getRequestURI().contains("user/login")) {
4556
JSONObject obj = new JSONObject();
4657
obj.put("userName", request.getParameter("userName"));

src/main/java/com/cetc/controller/UserController.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,27 @@
88
import org.springframework.web.bind.annotation.RestController;
99

1010
import com.cetc.annotation.SystemControllerLog;
11+
import com.cetc.controller.base.BaseController;
1112
import com.cetc.model.RespDataVo;
1213
import com.cetc.service.UserService;
14+
import com.cetc.utils.JsonUtils;
1315

1416

1517
@RestController
1618
@RequestMapping("/user")
17-
public class UserController {
19+
public class UserController extends BaseController {
1820

1921
private static Logger logger = Logger.getLogger(UserController.class);
2022

2123
@Autowired
2224
private UserService userService;
2325

26+
2427
@SystemControllerLog(description="登录系统")
2528
@RequestMapping(value = "/login", method ={RequestMethod.GET})
2629
public RespDataVo login(@RequestParam("userName")String usr,@RequestParam("userPwd")String pwd){
27-
logger.info("用户登陆校验接口");
2830
RespDataVo root=userService.getCheckUser(usr,pwd);
31+
logger.debug(String.format("返回结果:%s",JsonUtils.objectToJson(root)));
2932
return root;
3033
}
3134
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package com.cetc.controller.base;
2+
3+
import javax.servlet.http.HttpServletRequest;
4+
import javax.servlet.http.HttpServletResponse;
5+
6+
import org.springframework.web.HttpRequestMethodNotSupportedException;
7+
import org.springframework.web.bind.MissingServletRequestParameterException;
8+
import org.springframework.web.bind.annotation.ControllerAdvice;
9+
import org.springframework.web.bind.annotation.ExceptionHandler;
10+
import org.springframework.web.bind.annotation.ResponseBody;
11+
12+
import com.cetc.model.RespDataVo;
13+
14+
@ControllerAdvice
15+
public class BaseController {
16+
17+
@ExceptionHandler({Exception.class})
18+
@ResponseBody()
19+
public RespDataVo exp(HttpServletRequest request,HttpServletResponse response, Exception ex) {
20+
// 根据不同错误转向不同页面
21+
RespDataVo jsonResp = new RespDataVo();
22+
if (ex instanceof HttpRequestMethodNotSupportedException) {
23+
HttpRequestMethodNotSupportedException reqEx = (HttpRequestMethodNotSupportedException) ex;
24+
StringBuffer buffer = new StringBuffer();
25+
String[] strArray=reqEx.getSupportedMethods();
26+
String method="";
27+
for (String str : strArray) {
28+
method+=str+",";
29+
}
30+
buffer.append("不支持[ ").append(reqEx.getMethod()).append(" ],只支持[ ").append(method.substring(0, method.length()-1)).append(" ]");
31+
jsonResp.setCode("0011");
32+
jsonResp.setMsg(buffer.toString());
33+
return jsonResp;
34+
} else if(ex instanceof MissingServletRequestParameterException){
35+
MissingServletRequestParameterException reqEx = (MissingServletRequestParameterException) ex;
36+
StringBuffer buffer = new StringBuffer();
37+
buffer.append("缺少参数:[").append(reqEx.getParameterName()).append("]");
38+
jsonResp.setCode("0012");
39+
jsonResp.setMsg(buffer.toString());
40+
return jsonResp;
41+
}else{
42+
jsonResp.setCode("0013");
43+
jsonResp.setMsg("服务器异常");
44+
return jsonResp;
45+
}
46+
47+
}
48+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.cetc.controller.base;
2+
3+
import org.springframework.web.servlet.config.annotation.CorsRegistry;
4+
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
5+
6+
public class CorsConfigurerAdapter extends WebMvcConfigurerAdapter {
7+
8+
@Override
9+
public void addCorsMappings(CorsRegistry registry) {
10+
registry.addMapping("user/login");
11+
}
12+
13+
}

src/main/java/com/cetc/service/impl/UserServiceImpl.java

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import java.util.Calendar;
44

5-
import org.apache.log4j.Logger;
65
import org.springframework.beans.factory.annotation.Autowired;
76
import org.springframework.stereotype.Service;
87

@@ -18,38 +17,13 @@
1817
@Service("userService")
1918
public class UserServiceImpl implements UserService {
2019

21-
private static Logger logger = Logger.getLogger(UserServiceImpl.class);
22-
2320
@Autowired
2421
private UserRepository userRepository;
2522

26-
2723
@SystemServiceLog(description ="查询用户")
2824
@Override
2925
public RespDataVo getCheckUser(String usr, String pwd) {
30-
// RespDataVo root=new RespDataVo();
31-
// String code = "1000";
32-
// try {
33-
// UserVo user=userRepository.getUserByNameAndPwd(usr,pwd);
34-
// if(user!=null){//存在用户
35-
// String token=Base64.encode((user.getUserId()+"_"+DateUtil.getDateFormat(Calendar.getInstance())+"_A123456a").getBytes());
36-
// root.setToken(token);
37-
// root.setData(user);
38-
// root.setCode(code);
39-
// root.setMsg(ValueTool.getValue().get(code));
40-
// }else{
41-
// code="1004";
42-
// root.setCode(code);
43-
// root.setMsg(ValueTool.getValue().get(code));
44-
// }
45-
// } catch (Exception e) {
46-
// root.setCode("9999");
47-
// root.setMsg(ValueTool.getValue().get("9999"));
48-
// logger.error("校验用户错误", e);
49-
// }
50-
// return root;
5126
RespDataVo root=new RespDataVo();
52-
int a=1/0;
5327
String code = "1000";
5428
UserVo user=userRepository.getUserByNameAndPwd(usr,pwd);
5529
if(user!=null){//存在用户

src/main/resources/spring/spring-bean.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
expression="org.springframework.stereotype.Controller" />
2828
</context:component-scan>
2929

30-
<bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean" />
30+
<!-- <bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean" /> -->
3131

3232
<!-- 启动对@AspectJ注解的支持 -->
3333
<aop:aspectj-autoproxy/>

src/main/resources/spring/spring-mvc.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@
3636
<property name="suffix" value=".jsp" />
3737
</bean>
3838

39+
<bean class="com.cetc.controller.base.CorsConfigurerAdapter"></bean>
40+
3941
<mvc:resources location="/js/" mapping="/js/**"></mvc:resources>
4042

4143
<!-- 启动对@AspectJ注解的支持 -->

0 commit comments

Comments
 (0)