【问题标题】:CURL how to POST and then GETCURL 如何 POST 然后 GET
【发布时间】:2017-01-27 22:57:58
【问题描述】:

如何发出 POST 以对站点进行身份验证,然后发出 GET 以从命令行中检索所有数据 - MAC

这不起作用

curl -X POST -d '{"username":"xyz","password":"xyz"}' -H "Content-Type: application/json" https://example.com/login
curl -X GET -H "Content-Type: application/json" https://example.com/getdata

【问题讨论】:

  • 1.避免 -X, 2. 在第一个命令中存储 cookie,在第二个命令中读取它们。

标签: curl post get


【解决方案1】:

避免使用-X,这导致的问题多于解决的问题。默认情况下,curl 根据您提供的选项使用隐含方法。

关键通常是存储您返回的 cookie(使用-c)。那是你的“会话”。通常您需要在登录操作上遵循重定向(使用-L)。

然后在第二个请求中加载存储在第一个命令中的 cookie(使用-b)。

具有这些更改的命令行最终会如下所示:

curl -d '{"username":"xyz","password":"xyz"}' -H "Content-Type: application/json" https://example.com/login -c cookies.txt -L
curl -H "Content-Type: application/json" https://example.com/getdata -b cookies.txt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多