spring security RequestCache 源码

  • 2022-08-13
  • 浏览 (380)

spring security RequestCache 代码

文件路径:/web/src/main/java/org/springframework/security/web/savedrequest/RequestCache.java

/*
 * Copyright 2002-2016 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.springframework.security.web.savedrequest;

import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

/**
 * Implements "saved request" logic, allowing a single request to be retrieved and
 * restarted after redirecting to an authentication mechanism.
 *
 * @author Luke Taylor
 * @since 3.0
 */
public interface RequestCache {

	/**
	 * Caches the current request for later retrieval, once authentication has taken
	 * place. Used by <tt>ExceptionTranslationFilter</tt>.
	 * @param request the request to be stored
	 */
	void saveRequest(HttpServletRequest request, HttpServletResponse response);

	/**
	 * Returns the saved request, leaving it cached.
	 * @param request the current request
	 * @return the saved request which was previously cached, or null if there is none.
	 */
	SavedRequest getRequest(HttpServletRequest request, HttpServletResponse response);

	/**
	 * Returns a wrapper around the saved request, if it matches the current request. The
	 * saved request should be removed from the cache.
	 * @param request
	 * @param response
	 * @return the wrapped save request, if it matches the original, or null if there is
	 * no cached request or it doesn't match.
	 */
	HttpServletRequest getMatchingRequest(HttpServletRequest request, HttpServletResponse response);

	/**
	 * Removes the cached request.
	 * @param request the current request, allowing access to the cache.
	 */
	void removeRequest(HttpServletRequest request, HttpServletResponse response);

}

相关信息

spring security 源码目录

相关文章

spring security CookieRequestCache 源码

spring security DefaultSavedRequest 源码

spring security Enumerator 源码

spring security FastHttpDateFormat 源码

spring security HttpSessionRequestCache 源码

spring security NullRequestCache 源码

spring security RequestCacheAwareFilter 源码

spring security SavedCookie 源码

spring security SavedRequest 源码

spring security SavedRequestAwareWrapper 源码

0  赞