0

我正在使用 Spring MVC 为我的身份验证方法使用@requestbody@responsebody注释。我想知道如何在 spring mvc 中获取和设置 cookie。我需要将用户名和密码存储在我的 cookie 中,我正在通过requestbody. 还想知道如何在下次用户登录时在浏览器中获取此设置的 cookie。浏览器是否会自动将 cookie 与请求正文一起发送?具体来说,我不想选择 Spring Security 记住我选项。我是 Spring 框架的新手,因此非常感谢您提供示例代码。

JS 中的 Ajax 代码

 var ajaxOptions = {
            type: callType,
            url: serviceCompleteUrl,
            /* Add if required.
            dataType: returnType */
            async: false,
            success: function(data, status, xhr) {
                /*
                 * TODO: See if this is required
                if (xhr.status == 200) {
                 */
                ajaxSuccess = true;
                serviceResponse = data;
                /*
                }
                 */
            },

在服务中,我只是返回将映射到 serviceResponse 并可被 JS 使用的对象。

服务示例代码

  @RequestMapping("/login")
    public @ResponseBody LoginObject Login(@RequestBody LoginParameter request)
    {
       /* Code */
       return LoginObject;
    }

这就是我从服务返回对象的方式,然后被js中的服务响应捕获。

4

1 回答 1

0

切勿在 Cookie 中存储密码(即使是加密的)。要实现您想要的记住我功能,请遵循此答案

更新: 您需要在 JS 端将数据保存在 cookie 中的逻辑。服务调用返回后LoginObject,使用一些JSjQuery代码(如document.cookie="key=" + value;)将数据存储在 cookie 中。

于 2013-03-29T06:24:19.827 回答