curl - 使用 curl 将接收到的 cookie 存储在文件中
问题描述
我有卷曲的问题,它让我发疯。我正在尝试使用 curl 对 API 进行身份验证并获取 cookie。我需要将此 cookie 存储到一个文件中,因为稍后我需要它来进行实际的 API 查询。我还需要向 API 发送客户端证书和密钥。我的问题是响应包含我需要的 cookie,但是 curl 拒绝将 cookie 写入指定的文件。我可以在响应标头“Set-Cookie”中看到 cookie
到目前为止,我的 curl 调用如下所示:
curl --cert mycertfile.cert --key mykeyfile.key -v -k -c cookie.txt --output response.json -H 'Content-Type: application/json' -d <some json payload> <API URL>
响应正确写入指定文件。cookie 文件由 curl 创建,包含 3 行注释,说明它是由 libcurl 等创建的,但没有 cookie。
我在这里想念什么?
curl 版本 7.72.0 (x86_64-pc-linux-gnu),内核为 5.7.0-kali1-amd64
解决方案
看起来 API 有一些奇怪的行为,即使有 HTTP 401 Unauthorized 响应也会返回某种奇怪的 cookie,在这种情况下 curl 似乎忽略了 cookie 标头。
推荐阅读
- javascript - 使用切换更改 mapbox 地图的样式 - 只有标准样式有效
- mongodb - mongodb连接是同步的吗?
- verifiable-c - forward_call 遇到问题 - “没有适用的策略”
- node.js - Node.js 本机插件的不同实例之间的全局共享数据?
- java - 如果这包括那个(java密码生成器)
- c++ - 我可以将winCC OA与虚幻引擎连接吗?
- python - 如何在python中添加列表值
- rust - Unicode 代码点到 Rust 字符串
- python - 对于给定的字典键,获取所有下属作为列表
- javascript - Ajax 显示模式未从第一次单击触发