2 unassuming unassuming 于 2017.09.12 00:06 提问

网页发送请求如何设置Cookie 20C
    用document.cookie 赋值, 然后设置withCredentials: true,会在第二次把cookie发送出去.
    不过不是document.cookie的值,而是第一次请求Response Header里Set-Cookie返回的值,有没有办法修改发送的cookie.

3个回答

showbo
showbo   Ds   Rxr 2017.09.12 08:50

只要不是httponly cookie都可以用js修改,如果是就没有办法了

sunny_desmond
sunny_desmond   2017.09.12 09:12

如果可以,请用sessionstorge和 localstorge 代替

cyxevil
cyxevil   2017.09.12 13:59

        //写入Cookie
        function setCookie(name, value) {
            var Days = 1;
            var exp = new Date();
            exp.setTime(exp.getTime() +Days * 24 * 60 * 60 * 1000);
            document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
        }

        //获得Cookie
        function getCookie(name) {
            var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)"); //正则匹配
            if (arr = document.cookie.match(reg)) {
                return unescape(arr[2]);
            }
            else {
                return null;
            }
        }
        //这是一个页面第一次进入 弹出广告的效果
        $(document).ready(function () {
            debugger;
            c_start = document.cookie.indexOf("isPage=");//判断有没有这个Cookie
            if (c_start == -1) {
                setCookie("isPage", false);
            }
            else {
                return;
            }
            var isPage = getCookie("isPage");
            if (isPage.indexOf('false')!=-1) {
                $('#myModal').modal('show');
            } else {
                setCookie("isPage", true);//这个是修改Cookie
            }

        })

逻辑不一样 但是写入拿出的原理是一样的 你改改看

Csdn user default icon
上传中...
上传图片
插入图片