2018-08-14 11:04
@JFinal 非常感谢大神给的思路,我在LoginFilter中设置了下拦截
//排除登陆页面和res目录
if(!currUrl.endsWith("/login") && !currUrl.endsWith("/login/randomCode") && !currUrl.endsWith("login/monitorStatusNotify") && !currUrl.startsWith(contextPath + "/res")) {
if(session.getAttribute("sysUser") == null) {
response.sendRedirect(request.getContextPath() + "/login");//如果session为空表示用户没有登录就重定向到login页面
return;
}
然后postman访问时加上了路由:http://191.168.1.81:8080/login/monitorStatusNotify?cameraId=1&photoScenario=2&monitorResFlag=12&time=2018-08-09 12:23:34 就可以了正常返回json了。 非常感谢大神的提醒。
2018-08-14 10:42
@JFinal 谢谢您,我前台测试的时候是这么写的:
function fenxi1(){
$.ajax({
url:'/login/monitorStatusNotify',
type:"post",
data:{
"cameraId": "2",
"photoScenario": "1",
"monitorResFlag": 1,
"time":"2018-08-09 12:23:34"
},
success:function(data){
console.log(data);
alert(data);
}
})
};
后台后边返回是这样写的:
JSONObject jsonObject = new JSONObject();
if (a == 1) {
jsonObject.put("returnCode", "200");
} else {
jsonObject.put("returnCode", "500");
}
renderJson(jsonObject);
还是我应该用renderJson();,这种我也用过,测试也是返回了html的页面,所以在想是不是第三方访问时的拦截的问题呢。
2018-08-14 09:26
@JFinal ,请问jfinal在用postman做接口测试时不返回200但是返回了html页面,没有返回最后的json是怎么回事呢,后台用的是renderJson,json也能打印出来,但是总是会连带着返回html.请大神指教下,目前怀疑是拦截器的问题但是调了没有效果,怎么样能再第三方访问时正常返回json呢。求大神指教下,谢谢。