0
Я реализую поток входа в facebook, где мне нужно сохранить состояние перед перенаправлением и получить его после перенаправления обратно в приложение для проверки. Я пробовал так:Spring mvc поддерживает сеанс после перенаправления
@RequestMapping
public void redirectToFacebook(HttpSession session, HttpServletResponse response) throws IOException {
String state = UUID.randomUUID().toString();
session.setAttribute("facebook_state", state);
UriComponentsBuilder uriBuilder = UriComponentsBuilder
.fromUriString(providerLoginEndpoint)
.queryParam("redirect_uri", redirectUrl)
.queryParam("client_id", clientId)
.queryParam("scope", "public_profile")
.queryParam("state", state)
.queryParam("response_type", "code");
response.sendRedirect(uriBuilder.toUriString());
}
@RequestMapping("/redirect")
public String authorize(Model model, HttpSession session,
@RequestParam("code") final String code,
final @RequestParam("state") String state) {
String originalState = (String) session.getAttribute("facebook_state");
//...
}
Hovever originalState
имеет нулевое значение, и идентификатор сеанса гладкошерстных после callack. Есть ли способ поддерживать состояние сеанса до и после перенаправления с стороннего хоста?