0
나는PostProcessInterceptor의 리소스 클래스 필드에 액세스 하시겠습니까?
@Path("secure")
@RequestScoped
// @SecurityChecked
public class SecureResource {
@Context
private HttpServletRequest request;
@GET
@SecurityChecked
public Response getUser() {
return Response.ok("authenticated successfully!").build();
}
@POST
public Response login(@FormParam("user") @Nonnull final String user,
@FormParam("password") @Nonnull final String password) {
final String authToken = TokenUtils.createToken(user);
return Response.ok().header(AUTH_TOKEN, authToken).build();
}
@PUT
public Response updateUser() {
return Response.ok("updating user").build();
}
}
같은 자원 클래스를 가지고 있고 내가 여기에 요청 객체에 액세스 할 수있는 방법을 나는 확실하지 않다
@Interceptor
@Provider
@ServerInterceptor
@SecurityChecked
public class SecurityCheckInterceptor implements PostProcessInterceptor {
private static final Pattern PATTERN = Pattern.compile(":");
private static final Logger LOGGER = LoggerFactory.getLogger(SecurityCheckInterceptor.class);
@Override
public void postProcess(final ServerResponse response) {
// access the Resource class request object
}
}
헤더 클래스의 request
으로 접근하고 싶습니다 어디 PostProcessInterceptor
이
당신에게
감사 도와주세요
예, 요청에 '헤더'가 있으며 응답을 보내기 전에 요청에 새 헤더를 생성해야합니다. 그것은 의미가 있습니까? – daydreamer
메신저는이 API에 익숙하지 않습니다. 어쩌면 http://www.mastertheboss.com/resteasy/resteasy-interceptors-tutorial/page-2에서 respone 개체가 preprocess 핸들러에서 수동으로 생성 된 것을 볼 수 있습니다 - new Headers