You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
work/AuthMiddleware.java

27 lines
844 B

package middleware;
/**
* 认证中间件装饰器
* 具体装饰器类,用于验证请求的认证信息
*/
public class AuthMiddleware extends MiddlewareDecorator {
public AuthMiddleware(HttpRequestHandler decoratedHandler) {
super(decoratedHandler);
}
@Override
public HttpResponse handle(HttpRequest request) {
// 简单的认证检查逻辑
String authHeader = request.getHeaders();
if (authHeader != null && authHeader.contains("Authorization: Bearer token123")) {
System.out.println("Authentication successful");
return super.handle(request);
} else {
HttpResponse response = new HttpResponse();
response.setStatusCode(401);
response.setBody("Unauthorized");
return response;
}
}
}