如何使用cURL获取FULL cookie?

时间:2018-05-05 08:42:08

标签: curl cookies session-cookies setcookie

我最近在研究API。它是在localhost上运行的API。它需要登录会话才能使用其功能。由于API在没有GUI的CentOS服务器上运行,因此我需要从会话中保存cookie并使用保存的cookie访问具有cURL的函数。

以下是一些使用cURL生成和登录试用的cookie。

curl --cookie-jar cookie_with_--cookie-jar_option.txt 'localhost:3000/login/cellphone?phone=[number]&password=[password]' //saving cookie with --cookie-jar option

curl --dump-header cookie_with_--dump-header_option.txt 'localhost:3000/login/cellphone?phone=[number]&password=[password]' //saving cookie with --dump-header option

使用生成的cookie文件进行一些API函数测试。

curl --cookie cookie_with_--cookie-jar_option.txt 'localhost:3000/daily_signin' //using cookie generated with --cookie-jar option

curl --cookie cookie_with_--dump-header_option.txt 'localhost:3000/daily_signin' //using cookie generated with --dump-header option

但是所有返回的“未登录”错误。当我使用浏览器访问API时,一切都很好。

后来我查看了两个选项生成的cookie文件。以下是样本。

--dump-header生成的cookie的屏幕截图 A screenshot of the cookie generated by --dump-header

--cookie-jar生成的cookie的屏幕截图 A screenshot of the cookie generated by --cookie-jar

这些cookie实在令人困惑。哪一个是完整的cookie?哪一个是从服务器返回的原始cookie?如果它们都不正确,我应该使用什么命令或选项来获取完整的cookie?

1 个答案:

答案 0 :(得分:0)

转储标头返回HTTP请求标头。您需要获取HTTP响应标头才能看到设置的cookie。

饼干罐似乎是正确的。也就是说,如果那时没有设置MUSIC_U和_csrf。