Go语言学之旅十三--Cookie,爬虫入门

本文介绍了Go语言中Cookie的使用,包括Cookie的基本概念、Go语言的Cookie支持、HttpOnly设置、Path属性以及Expires过期时间的设定。同时,文章还简单提及了爬虫入门,展示了如何通过正则表达式消除噪音来获取所需信息。
摘要由CSDN通过智能技术生成

一,Cookie
Cookie 简介

  • Cookie就是客户端存储技术.以键值对的形式存在
  • 在B/S架构中,服务器端产生Cookie响应给客户端,浏览器接收后把Cookie存在在特定的文件夹中,以后每次请求浏览器会把Cookie内容放入到请求中

二.Go语言对Cookie的支持

  • 在net/http包下提供了Cookie结构体

    • Name设置Cookie的名称
    • Value 表示Cookie的值
    • Path 有效范围
    • Domain 可访问Cookie 的域
    • Expires 过期时间
    • MaxAge 最大存活时间,单位秒
    • HttpOnly 是否可以通过脚本访问
type Cookie struct {
   
  	Name  string
  	Value string

  	Path       string    // optional
  	Domain     string    // optional
  	Expires    time.Time // optional
  	RawExpires string    // for reading cookies only

  	// MaxAge=0 means no 'Max-Age' attribute specified.
  	// MaxAge<0 means delete cookie now, equivalently 'Max-Age: 0'
  	// MaxAge>0 means Max-Age attribute present and given in seconds
  	MaxAge   int
  	Secure   bool
  	HttpOnly bool
  	Raw      string
  	Unparsed []string // Raw text of unparsed attribute-value pairs
  }

代码示例:
html代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <title>Title</title>
</head>
<body>
<a href="setCookie">产生cookie</a>
<a href="getCookie">获取cookie</a>
</body>
</html>

go语言代码示例:

package main

import (
	"html/template"
	"net/http"
)

func exit1(w http.ResponseWriter,r *http.Request)  {
   
	t,_:=template.ParseFiles("view/index5.html")
	t.Execute(w,nil)
}
func setCookie(w http.ResponseWriter,r *http.Request)  {
   
	c:=http.Cookie{
   Name:"mykey",Value:"myvalue"}
	http.SetCookie(w,&c)
	t,_:=template.ParseFiles("view/index5.html")
	t.Execute(w,nil)
}
func getCookie(w http.ResponseWriter,r *http.Request)  {
   
	//c1,_:=r.Cookie("mykey")
	//取出全部cookie内容
	cs:=r.Cookies()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值