curl下载文件遇到的一个小坑,保持原文件名

本文分享了使用curl从特定API下载文件时遇到的问题及解决方案。作者发现下载的文件名被错误地命名为“export”,而非期望的包含SHA256码后6位的原文件名。通过使用curl参数-OJ或-O-J,成功保持了源文件名,确保了下载文件的正确命名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近做了一个下载文件的api,然后实际并没有想象中的美好,用户只能使用curl来下载文件,类似如下:
curl -X POST
http://ip/company/api//export
-H ‘Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8’
-H ‘Accept: application/vnd.apache.kylin-v2+json’
-H ‘Accept-Encoding: gzip, deflate, br’
-H ‘Accept-Language: en’
-H ‘Authorization: Basic QURNSU46S1lMSU4=’
-H ‘Content-Type: application/x-www-form-urlencoded’
-H ‘cache-control: no-cache,no-cache’
-d ‘cube=kylin_sales_cube&project=learn_kylin&withDependence=true’
-O
curl官方提供的参数中-o可以指定下载的文件名,-O保持源文件名下载,由于下载的文件名中有整个文件的SHA256码的后6位,所以需要保持原文件名下载,使用-O,然而,
下载下来的文件名竟然叫export,天哪!!!他默认为我的url中最后是资源的名称,查了好久,可以使用参数-OJ或者-O -J来保持原文件名,在此记录下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值