private void initFallback() {
		FallbackProperties fallbackProperties = gatewayProperties.getFallback();
		if (fallbackProperties == null
				|| StringUtil.isBlank(fallbackProperties.getMode())) {
			return;
		}
		if (ConfigConstants.FALLBACK_MSG_RESPONSE.equals(fallbackProperties.getMode())) {
			if (StringUtil.isNotBlank(fallbackProperties.getResponseBody())) {
				GatewayCallbackManager.setBlockHandler((exchange, t) -> ServerResponse
						.status(fallbackProperties.getResponseStatus())
						.contentType(
								MediaType.valueOf(fallbackProperties.getContentType()))
						.body(fromValue(fallbackProperties.getResponseBody())));
				logger.info(
						"[Sentinel SpringCloudGateway] using AnonymousBlockRequestHandler, responseStatus: "
								+ fallbackProperties.getResponseStatus()
								+ ", responseBody: "
								+ fallbackProperties.getResponseBody());
			}
		}
		String redirectUrl = fallbackProperties.getRedirect();
		if (ConfigConstants.FALLBACK_REDIRECT.equals(fallbackProperties.getMode())
				&& StringUtil.isNotBlank(redirectUrl)) {
			GatewayCallbackManager
					.setBlockHandler(new RedirectBlockRequestHandler(redirectUrl));
			logger.info(
					"[Sentinel SpringCloudGateway] using RedirectBlockRequestHandler, redirectUrl: "
							+ redirectUrl);
		}
	}
@author <a href="mailto:fangjian0423@gmail.com">Jim</a>
spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java