Go cookie
Web状态,对于我们从c/c++转过来的人来说还是很重视的啊
但,如何用好cookie来让我心顺畅,目前还是有点障碍
可能是我没能完全理解cookie
但是,如果由浏览器客户端决定自己绑定那个cookie;啥时候取消绑定;对于我来说就愉快多了。
请看
package main
import (
"fmt"
"net/http"
)
func SayHello(w http.ResponseWriter, req *http.Request) {
w.Write([] byte("Hello World!"))
}
func ReadCookieServer(w http.ResponseWriter, req *http.Request) {
cookie, err := req.Cookie("zcl_cookie")
if (err==nil) {
cookievalue := cookie.Value
w.Write([]byte("<b>cookie value is : "+cookievalue+"</b>\n"))
} else {
w.Write([]byte("<b> read error: "+err.Error()+"</b>\n"))
}
}
func WriteCookieServer(w http.ResponseWriter, req *http.Request) {
cookie := http.Cookie{Name:"zcl_cookie", Value:"zcl_cookie_value", Path:"/", MaxAge:100}
http.SetCookie(w, &cookie)
w.Write([]byte("<b>set cookie is succeed!</b>\n"))
}
func DeleteCookieServer(w http.ResponseWriter, req *http.Request) {
cookie := http.Cookie{Name:"zcl_cookie", Path:"/", MaxAge:-1}
http.SetCookie(w, &cookie)
w.Write([]byte("<b>delete cookie is succeed!</b>\n"))
}
func main() {
http.HandleFunc("/", SayHello)
http.HandleFunc("/readcookie", ReadCookieServer)
http.HandleFunc("/writecookie", WriteCookieServer)
http.HandleFunc("/deletecookie", DeleteCookieServer)
fmt.Println("server is running at 8086")
http.ListenAndServe(":8086", nil)
}
结果:
Finally:
服务器只要响应有效cookie,就可以维护客户端的历史信息了。
客户端会自己清除服务器端的cookie,服务器相应的再清除客户端历史信息
这是我的理解,我也打算这么干。
哈哈哈
不管你干不干,反正,我是干了!
Go cookie的更多相关文章
- 超大 Cookie 拒绝服务攻击
有没有想过,如果网站的 Cookie 特别多特别大,会发生什么情况? 不多说,马上来试验一下: for (i = 0; i < 20; i++) document.cookie = i + '= ...
- IE10、IE11 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题
你是否遇到过当使用一个涉及到Cookie操作的网站或者管理系统时,IE 6.7.8.9下都跑的好好的,唯独到了IE10.11这些高版本浏览器就不行了?好吧,这个问题码农连续2天内遇到了2次.那么,我们 ...
- 解决cookie跨域访问
一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- 一个诡异的COOKIE问题
今天下午,发现本地的测试环境突然跑不动了,thinkphp直接跑到异常页面,按照正常的排错思路,直接看thinkphp的log 有一条 [ error ] [2]setcookie() expects ...
- [转载]Cookie/Session的机制与安全
Cookie和Session是为了在无状态的HTTP协议之上维护会话状态,使得服务器可以知道当前是和哪个客户在打交道.本文来详细讨论Cookie和Session的实现机制,以及其中涉及的安全问题. 因 ...
- jquery.cookie的使用
今天想到了要为自己的影像日记增加赞的功能,并且需要用到cookie. 记得原生的js操作cookie也不是很麻烦的,但似乎jquery更简单,不过相比原生js,需要额外引入2个文件,似乎又不是很好,但 ...
- 跨域问题,前端主动向后台发送cookie
跨域是什么? 从一个域名的网页访问另一个域名的资源,就会出现跨域.只要协议.端口.域名有一个不同就会出现跨域 例如: 1.协议不同 http://www.baidu.com:80 和 https:/ ...
- 【流量劫持】沉默中的狂怒 —— Cookie 大喷发
精简版:http://www.cnblogs.com/index-html/p/mitm-cookie-crack.html 前言 上一篇文章 讲解了如何借助前端技术,打造一个比 SSLStrip 更 ...
- 好好了解一下Cookie
Cookie的诞生 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的.Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用.比如判断用户是否是第一次访问网站.目前最新 ...
随机推荐
- easyui---combogrid
选择一个数据表格某行记录 依赖panel 和datagrid combogrid:<select id="cc" name="dept" style=&q ...
- WebSphere Application Server V8.5.5.0
Downloadable files Abstract IBM WebSphere Application Server Version 8.5.5 Refresh Pack for all plat ...
- 精彩看点 | GIAC大会PPT+视频合集全量放送!
GIAC是中国互联网技术领域的行业盛事,每年从互联网架构最热门的系统架构设计.人工智能.机器学习.工程效率.区块链.分布式架构等领域甄选前沿有典型代表的技术创新及研发实践的架构案例,分享他们在本年度最 ...
- GIAC 2017全球互联网架构大会最新日程
12月22日至23日,高可用架构和msup联合主办的GIAC 全球互联网架构大会将于上海光大会展中心举行.GIAC 全球互联网架构大会是高可用架构技术社区推广的面向架构师.技术负责人及高端技术从业人员 ...
- Prometheus 函数
函数列表 一些函数有默认的参数,例如:year(v=vector(time()) instant-vector).v是参数值,instant-vector是参数类型.vector(time())是默认 ...
- manifold 微分流形上可以定义可微函数、切向量、切向量场、各种张量场等对象并建立其上的分析学,并可以赋予更复杂的几何结构以研究它们的性质。
小结: 1.流形(英语:Manifolds)一般可以通过把许多平直的片折弯并粘连而成,是局部具有欧几里得空间性质的空间,是欧几里得空间中的曲线.曲面等概念的推广 2.描述一个流形往往需要不止一个“地图 ...
- 问题:虚拟环境名字相同遇到bug,please specify a different sdk name?
1.please specify a different sdk name? 这个问题出现的原因是因为PyCharm中存在相同名字的虚拟环境变量. 本人的出错原因是,一直使用PyCharm的默认设置来 ...
- [gdb][python][libpython] 使用gdb调试python脚本
https://devguide.python.org/gdb/ https://sourceware.org/gdb/current/onlinedocs/gdb/Python.html#Pytho ...
- [daily][tcpdump] tcpdump查找reset包
tcpdump -r xxxx.pcap 'tcp[tcpflags] & tcp-rst != 0'
- Hash算法解决冲突的方法
https://blog.csdn.net/feinik/article/details/54974293 Hash算法解决冲突的方法一般有以下几种常用的解决方法1, 开放定址法:所谓的开放定址法就是 ...