提交 9840851a 编写于 作者: 如梦技术's avatar 如梦技术 🐛

HttpFilter 优化

上级 41311bca
......@@ -24,9 +24,9 @@ public class MqttHttpAuthFilter implements HttpFilter, InitializingBean {
}
@Override
public HttpResponse response(HttpRequest request, HttpResponse response) {
public HttpResponse response(HttpRequest request) {
// 认证不通过时的响应
return Result.fail(response, ResultCode.E103);
return Result.fail(request, ResultCode.E103);
}
@Override
......
......@@ -40,9 +40,9 @@ public class MqttHttpAuthFilter implements HttpFilter, InitializingBean {
}
@Override
public HttpResponse response(HttpRequest request, HttpResponse response) {
public HttpResponse response(HttpRequest request) {
// 认证不通过时的响应
return Result.fail(response, ResultCode.E103);
return Result.fail(request, ResultCode.E103);
}
@Override
......
......@@ -59,7 +59,8 @@ public class BasicAuthFilter implements HttpFilter {
}
@Override
public HttpResponse response(HttpRequest request, HttpResponse response) {
public HttpResponse response(HttpRequest request) {
HttpResponse response = new HttpResponse(request);
response.addHeader(WWW_AUTHENTICATE, BASIC_REALM);
Result.fail(response, ResultCode.E103);
return response;
......
......@@ -20,6 +20,7 @@ import com.alibaba.fastjson.JSONObject;
import net.dreamlu.iot.mqtt.core.server.http.api.code.ResultCode;
import org.tio.http.common.HeaderName;
import org.tio.http.common.HeaderValue;
import org.tio.http.common.HttpRequest;
import org.tio.http.common.HttpResponse;
import java.nio.charset.Charset;
......@@ -62,6 +63,17 @@ public final class Result {
return result(response, resultCode, json);
}
/**
* 响应失败
*
* @param request HttpRequest
* @param resultCode ResultCode
* @return HttpResponse
*/
public static HttpResponse fail(HttpRequest request, ResultCode resultCode) {
return fail(new HttpResponse(request), resultCode);
}
/**
* 响应失败
*
......
......@@ -38,10 +38,9 @@ public interface HttpFilter {
/**
* 响应
*
* @param request HttpRequest
* @param response HttpResponse
* @param request HttpRequest
* @return HttpResponse
*/
HttpResponse response(HttpRequest request, HttpResponse response);
HttpResponse response(HttpRequest request);
}
......@@ -41,8 +41,7 @@ public class MqttHttpRequestHandler implements HttpRequestHandler {
try {
for (HttpFilter filter : httpFilters) {
if (!filter.filter(request)) {
HttpResponse response = new HttpResponse(request);
return filter.response(request, response);
return filter.response(request);
}
}
} catch (Exception e) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册