CURL cookie文件有效,但cookie本身无效

时间:2019-06-11 21:37:47

标签: curl

我可以成功地使用curl调用我的Web服务

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时却不起作用?

1 个答案:

答案 0 :(得分:1)

  

-c,--cookie-jar                 (HTTP)指定要将curl写入所有cookie的文件                 完成操作后。 Curl写入其所有Cookie                 在操作结束时将内存中的Cookie存储到给定文件中                 位置。如果没有已知的cookie,将不会写入任何数据。的                 文件将使用Netscape cookie文件格式写入。如果                 您将文件名设置为单破折号“-”,则cookie将为                 写入标准输出。

-c希望文件写入cookie。

  

-b,--cookie                 (HTTP)将数据传递到Cookie标头中的HTTP服务器。它                 可能是先前从服务器中接收到的数据                 “设置Cookie:”行。数据应采用以下格式                 “ NAME1 = VALUE1; NAME2 = VALUE2”。

尝试一下:

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