浏览代码

Handle web client response error

Issue gh-1189
Joe Grandja 2 年之前
父节点
当前提交
23f97e245f
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      samples/messages-client/src/main/java/sample/web/AuthorizationController.java

+ 8 - 0
samples/messages-client/src/main/java/sample/web/AuthorizationController.java

@@ -25,8 +25,10 @@ import org.springframework.security.oauth2.core.endpoint.OAuth2ParameterNames;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.ExceptionHandler;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.reactive.function.client.WebClient;
+import org.springframework.web.reactive.function.client.WebClientResponseException;
 
 import static org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction.clientRegistrationId;
 import static org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction.oauth2AuthorizedClient;
@@ -99,4 +101,10 @@ public class AuthorizationController {
 		return "device-activate";
 	}
 
+	@ExceptionHandler(WebClientResponseException.class)
+	public String handleError(Model model, WebClientResponseException ex) {
+		model.addAttribute("error", ex.getMessage());
+		return "index";
+	}
+
 }