当前位置: 首页 > 面试题库 >

Golang:如何使用Cookie跟踪位置

申屠弘图
2023-03-14
问题内容

如果对http请求的响应是带有cookie的重定向(http代码302),

您如何指示Go客户使用收到的Cookie跟踪新位置?

在CURL中,可以通过以下方式轻松设置客户端:

 COOKIEFILE = ""
 AUTOREFERER = 1
 FOLLOWLOCATION = 1

您如何在Go中做到这一点?


问题答案:

使用Go 1.1,您可以使用net/http/cookiejar

这是一个工作示例:

package main

import (
    "golang.org/x/net/publicsuffix"
    "io/ioutil"
    "log"
    "net/http"
    "net/http/cookiejar"
)

func main() {
    options := cookiejar.Options{
        PublicSuffixList: publicsuffix.List,
    }
    jar, err := cookiejar.New(&options)
    if err != nil {
        log.Fatal(err)
    }
    client := http.Client{Jar: jar}
    resp, err := client.Get("http://dubbelboer.com/302cookie.php")
    if err != nil {
        log.Fatal(err)
    }
    data, err := ioutil.ReadAll(resp.Body)
    resp.Body.Close()
    if err != nil {
        log.Fatal(err)
    }
    log.Println(string(data))
}


 类似资料:
  • 由于Session是服务端对象,浏览器要想使用某个服务端的Session对象,就必须在请求消息中包含该Session对象的SessionID。该SessionID一般被放到HTTP请求消息头的Cookie字段中,Cookie名称是JSESSIONID。下面的例子揭示了通过Cookie来跟踪Session的底层技术,读者可以从该例子中充分了解Cookie和Session的关系。 例子 : 通过Coo

  • 问题内容: 我曾经短暂地附加一个过程。该过程创建了90个线程。当我找到有问题的线程时,我必须繁琐地搜索父线程,然后是祖父母线程,一直到根进程。 是否有技巧或工具可以快速找出哪个线程创建了另一个线程?还是更好,打印类似树的线程创建树? 问题答案: 跟踪编辑的子进程。

  • 问题内容: 我希望每t毫秒定期跟踪一次鼠标光标的位置。因此,从本质上讲,当页面加载时- 该跟踪器应该启动,并且每(例如)每100毫秒启动一次,我应该获取posX和posY的新值并以表格形式打印出来。 我尝试了以下代码-但值没有刷新-表单框中仅显示posX和posY的初始值。关于如何启动和运行它的任何想法? 问题答案: 在事件处理程序接收到的对象上报告鼠标的位置,您可以将其附加到窗口(事件冒泡):

  • 问题内容: 我想在学习活动中构建一个简单的Web应用程序。如果遇到首次访问者,Webapp应该要求用户输入他们的email_id,否则它会通过cookie记住用户并自动登录以执行功能。 这是我第一次创建基于用户的Web应用程序。我心中有一个蓝图,但是我无法弄清楚如何实现它。首先,我对收集用户cookie的方式感到困惑。我研究了各种教程和flask_login,但是与flask_login所实现的相

  • 在我的android应用程序中,我有一个活动,它有3或4个片段,可以根据一些用户或服务器事件按顺序附加。 我想在firebase中将所有这些片段作为屏幕进行跟踪。 因此,理想情况下,如果可能的话,是否有一个API我可以在片段的onCreate中调用,并告诉firebase用户当前处于fraction1,fragment2或fracment3中?

  • 问题内容: 我可以使用Python中的OpenCV从网络摄像头获取帧。camshift示例接近我想要的,但是我不希望人工干预来定义对象。我想获得在几帧的过程中变化的总像素的中心点,即运动对象的中心。 问题答案: 我已经从博客文章 使用OpenCV进行运动检测中 找到的C版本的代码转换了一些工作代码: