【问题标题】:CURL cookie file works but not cookie themselvesCURL cookie 文件有效,但 cookie 本身无效
【发布时间】:2019-06-11 21:37:47
【问题描述】:

我可以像这样成功地使用 curl 调用我的网络服务

curl -vL -c ~/.internal/cookie -b ~/.internal/cookie https://mywebservcie

这行得通,我可以看到 json 内容

现在,如果我打开 ~/.internal/cookie 文件,我可以看到 4 行。我知道这个文件是 netscape cookie 文件格式,因此第 6 列和第 7 列是 cookie 名称和内容。

如果我现在尝试使用 cookie 显式调用相同的 Web 服务

curl -vL -c"a=1" -c"b=2" -c"c=3" -c"d=4" https://mywebservice

我收到 401 未经授权的错误。

为什么当我指定整个文件时它可以工作,但当我将文件的内容指定为单个 cookie 时它不起作用?

【问题讨论】:

    标签: curl


    【解决方案1】:

    -c, --cookie-jar (HTTP) 指定您希望 curl 将所有 cookie 写入哪个文件 完成手术后。 Curl 从它的 在操作结束时将内存中的 cookie 存储到给定文件 选项。如果不知道任何 cookie,则不会写入任何数据。这 文件将使用 Netscape cookie 文件格式写入。如果 您将文件名设置为单个破折号“-”,cookie 将是 写入标准输出。

    -c 需要一个文件来写入 cookie。

    -b, --cookie (HTTP) 在 Cookie 标头中将数据传递给 HTTP 服务器。它 据说是先前从服务器接收到的数据 “Set-Cookie:”行。数据应该是格式 "NAME1=VALUE1;NAME2=VALUE2"。

    试试这个:

    curl -vL -b "a=1; b=2; c=3; d=4" https://mywebservice
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-12
      • 2014-01-11
      • 2016-03-05
      • 2021-09-20
      • 2018-06-22
      • 2014-09-18
      • 1970-01-01
      相关资源
      最近更新 更多