簡體   English   中英

Chrome 瀏覽器:未從響應標頭設置 cookie

[英]Chrome browser: not set cookie from response header

在服務器端創建 cookie,然后添加到響應中:

    Cookie cookie = new Cookie("foo", "bar");
    cookie.setPath("/abc");
    cookie.setDomain(request.getServerName());
    cookie.setSecure(request.isSecure());
    cookie.setMaxAge(24 * 60 * 60 * 90); //  90 days
    response.addCookie(cookie);

響應頭:(不是 ajax)從瀏覽器開發者工具中看到

Content-Type:text/html;charset=UTF-8
Date:Wed, 25 Feb 2015 07:13:12 GMT
Server:Apache-Coyote/1.1
Set-Cookie:foo="bar"; Version=1; Domain=localhost; Max-Age=7776000; Expires=Tue, 26-May-2015 07:13:12 GMT; Path=/abc

但是從開發工具>資源>cookies,cookie沒有顯示出來。

任何幫助表示贊賞。

即使我編寫了相同的代碼,但沒有顯示 cookie。

當我打印我的回復時,我會得到值,但我在 chrome 瀏覽器上看不到。

服務器端代碼:

Cookie lastConnetionDateCookie = createCookie("lastConnetionDate", lastLoginDate);
            response.addCookie(lastConnetionDateCookie);

            Cookie creationDateCookie = createCookie("creationDate", userCreationDate);
            response.addCookie(creationDateCookie);

            Cookie servicesCookie = createCookie("services", StringUtils.join(services, "|"));
            response.addCookie(servicesCookie);

            _log.info(response);

阿賈克斯代碼:

function setUserCookies() {
    JQ.ajax({
        type: 'POST',
        url: 'http://.....',
        data: formToJSON,
        contentType:'application/json',
        /* xhrFields: {
            withCredentials: true
        }, */
        crossDomain: true,
        success: function(data, textStatus, jqXHR){
             console.log('Cookie created successfully');
          },
        error: function(jqXHR, textStatus, errorThrown){
             console.log('setUserCookies error : ' + textStatus);
        }
    });
}

function formToJSON() {
    return ${userCookies};
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM