Spring Boot – How to solve OAuth2 REDIRECT_URI_MISMATCH
When trying to authenticate a user using OAuth2 through a third-party service like (Google, Facebook .. etc.), the following error occurs:
redirect_uri_mismatch error occurs when the redirect URL defined for your application at the authorization service doesn’t match with the value of parameter “redirect_uri” passed by your request.
When integrating OAuth2 with Spring Boot, the default value of redirect_uri is set to “<ip>:<port>/login”.
In order to solve this issue, you have 2 options:
- Define “<ip>:<port>/login” as a redirect URL under the authorization service.
- Use a custom redirect URL through setting the following attributes in application.properties:12security.oauth2.client.preEstablishedRedirectUri=http://localhost:9090/callbacksecurity.oauth2.client.useCurrentUri=false
In the above configuration we set a custom redirect URI as “http://localhost:9090/callback”.