关于Cookie

(1)Cookie基本属性

浏览器脚本操作还是服务器端脚本,都可以设置Cookie,浏览器脚本典型的有JavaScript,服务器端编程脚本有php、jsp等等,Cookie属性一览

nameCookie的名称
valueCookie的值
expireCookie有效期
pathCookie保存的目录
domainCookie所在域
secureCookie是否只能在https协议下使用,默认http和https下都可以使用
httponly

Cookie是否只能通过http协议操作,此处http是泛指(还包括https)。

如果设置为true,则javascript脚本是不能操作cookie的

注意后两项只能在服务器端设置,否则如果用 javascript 脚本设置了,那这个属性还有什么意义。。。

 

(2)javascript 操作Cookie

设置cookie

            function addcookie(name, value, expireHours, domain, path) {
                var cookieString = name + "=" + escape(value);
                // 设置有效期,推荐设置
                // 有效期一般使用GMT格式时间,普通时间形如 2014-01-21 10:50:39
                // GMT 格式的则为 21 Jan 2014 10:50:39 GMT
                if (expireHours > 0) {
                    var date = new Date();
                    date.setTime(date.getTime() + expireHours * 3600 * 1000);
                    cookieString = cookieString + ";expire=" + date.toGMTString();
                }
                // 设置域,推荐设置,并且域范围不能过大
                if (undefined !== domain) {
                    cookieString = cookieString + ";domain=" + domain;
                }
                // 设置cookie保存路径,推荐设置,并且明确范围最好
                if (undefined !== path) {
                    cookieString = cookieString + ";path=" + path;
                }
                // 通过js脚本设置cookie
                // cookie 串的形式如 
                // name=user; value=baidu; expire=21 Jan 2014 10:50:39 GMT; domain=baidu.com; path=/test/
                document.cookie = cookieString;
            }

 

获取所有Cookie,本例返回json对象:以cookie名称作为key,cookie的值作为value

            function getAllCookie() {
                // cookie串中间包含有空格,比如 username=baidu, domain=baidu.com
                // 去掉空格并且根据 ; 分组 得到所有cookie
                var cookieArr = document.cookie.replace(/ /g, '').split(';');
                var cookieJosn = {};
                for (var index in cookieArr) {
                    var itemArr = cookieArr[index].split('=');    // itemArr 就是单个cookie了,比如 user=baidu
                    cookieJosn[itemArr[0]] = itemArr[1];
                }
                return cookieJosn;
            }


根据cookie名称获取cookie

            function getCookie(cookieName){
                return getAllCookie()[cookieName];
            }

 

根据cookie名称删除cookie

            function delCookie(cookieName) {
                // 删除cookie就是把cookie有效期设置为过去时间
                var cookieVal = getCookie(cookieName);
                document.cookie = cookieName + '=' + cookieVal + ';expire=' + (new Date().getTime() - 1);
            }


(3)php设置cookie

php设置cookie,只需调用setcookie函数即可,各个参数与前文表格列出来的一一对应

setcookie($name, $value, $expire, $path, $domain, $secure, $httponly);

但是设置cookie之前不能有任何输出,即任何echo或者print语句都不行

/**
 * $name:cookie名称。除了 $name 是必填参数,其他都有默认的缺省值
 * $value:cookie值,缺省值为 null
 * $expire:cookie有效时间,单位秒。不设置则表示在当前会话期间有效,cookie保存在内存中,关闭浏览器之后cookie就失效了
 * $path:cookie保存的目录,如果设置为 / ,则在整个domain(域名)内都有效。如果设置为 /a/则在domain下的 /a/ 目录有效
 * $domian:cookie所在的域名,比如设置为 cnsuning.com 表示在这个站点以及所有子站点下均有效
 * $secure:cookie是否只能通过https链接,默认值是false,表示在http和https协议下都能使用
 * $httponly:cookie是否只能在http(包括https)协议访问,默认值false。表示一般的脚本比如javascript也能操作cookie
 * 
 */

setcookie('user', 'hello', time()+3600, '/', 'baidu.com',false,false);

 

(4)jsp设置cookie

        <%
            Cookie cookie = new Cookie("user", "baidu");
            cookie.setDomain("baidu.com");
            cookie.setPath("/demo/");
            cookie.setHttpOnly(false);
            cookie.setSecure(false);
            cookie.setMaxAge(60 * 10);  // 有效期10分钟
            response.addCookie(cookie);
        %>



 

PyCharm社区版是一款功能强大的Python集成开发环境(IDE),它提供了许多方便的功能来帮助开发者编写、调试和运行Python代码。下面是使用PyCharm社区版在服务器上运行代码的步骤: 1. 首先,确保你已经在服务器上安装了Python和PyCharm社区版。如果没有安装,你可以按照官方文档的指引进行安装。 2. 打开PyCharm社区版,并创建一个新的项目或打开一个已有的项目。 3. 在PyCharm的顶部菜单栏中,选择"Run" -> "Edit Configurations"。 4. 在弹出的对话框中,点击左上角的"+"按钮,选择"Python"。 5. 在"Script path"字段中,填写你要在服务器上运行的Python脚本的路径。 6. 在"Interpreter"字段中,选择你在服务器上安装的Python解释器。 7. 在"Deployment"选项卡中,点击左上角的"+"按钮,选择"SFTP"。 8. 在"SFTP host"字段中,填写服务器的IP地址或域名。 9. 在"Port"字段中,填写服务器的SSH端口号(默认为22)。 10. 在"User name"字段中,填写连接服务器所需的用户名。 11. 在"Auth type"字段中,选择适合你的身份验证方式(密码或密钥)。 12. 填写相应的身份验证信息,如密码或密钥路径。 13. 点击"Test SFTP connection"按钮,确保连接服务器的设置是正确的。 14. 点击"OK"保存配置。 15. 点击PyCharm顶部菜单栏中的绿色运行按钮,即可在服务器上运行你的代码。 希望以上步骤能够帮助你在PyCharm社区版中成功地使用服务器代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值