Просмотр рендеринга в весеннем загрузочном приложении - PullRequest
0 голосов
/ 05 января 2019

Я использую spring-boot на базовом веб-сайте. У меня есть страница home.html, которая возвращается HomeController, и другие страницы, которые загружаются как страница iframe на home.html через навигацию на домашней странице. Я хочу, чтобы страница personal.html загружалась как страница iframe из home.html только после успешного входа со страницы login.html. Снова login.html страница загружается как iframe в home.html.

Тайна в том, что: после проверки подлинности из моей функции обработчика запросов (запрос отправлен login.html), когда я возвращаю «personal.html» как представление в ModelAndView объекте, он автоматически помещается в iframe из home.html. Я ожидал, что «personal.html» заменит home.html. Хотя это то, что я хотел, я не понимал, почему это произошло.

Следующее является частью home.html.

<body>
    <div>
    <ul>
        <li> <a href="#home"     id="id_home"  onClick='changePage(event);' class="active">Home</a></li>
        <li><a href="#persoal"  id="id_personal" onClick='changePage(event);'>Personal</a></li>
    </ul>
    </div>
    <div class="login">
        <a href="#login" id="id_login" onClick='setNewPage(event);'>login</a>
    </div>

    <div>
        <iframe id="anchor" src = "${iframe_source}"></iframe>
    </div>
</body>

См. Фрагмент кода ниже моей функции-обработчика запросов (рабочий код, как? - не должен personal.html заменить home.html?):

@RequestMapping(value = "/html/login",method = RequestMethod.POST)
public ModelAndView getPersonalPage(@RequestParam("userName") String username,
        @RequestParam("password") String password)
{
    if(userService.authenticateUser(username, password) == true)
    {
        ModelAndView modelView = new ModelAndView();
        modelView.setViewName("personal");
        modelView.addObject("user", username);
        return modelView;
    }
    else
    {
        return null;
    }
}

На самом деле, я думал, что это будет работать следующим кодом (но не работает, почему? - Не следует загружать personal.html как iframe в home.html?).

@RequestMapping(value = "/html/login",method = RequestMethod.POST)
public ModelAndView getPersonalPage(@RequestParam("userName") String username,
        @RequestParam("password") String password)
{
     if(userService.authenticateUser(username, password) == true)
     {
         ModelAndView modelView = new ModelAndView();
         modelView.setViewName("home");
         modelView.addObject("user", username);
         modelView.addObject("iframe_src",
            "personal.html");
         return modelView;
     }
     else
     {
         return null;
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...