file - 使用 curl 从管道发布文件
问题描述
我如何从管道中获取输出并使用 curl 将其发布为文件?
例如以下作品
curl -F 'file=@data/test.csv' -F 'filename=test.csv' https://mydomain@apikey=secret
我想从管道中获取文件内容,但我不太清楚如何将其指定为文件输入。我的第一个猜测是-F 'file=@-'
,但这并不完全正确。
cat data/test.csv | curl -F 'file=@-' -F 'filename=test.csv' https://mydomain@apikey=secret
(这里cat
只是一个更复杂的获取数据的事件序列的替代品)
更新 以下作品:
cat test/data/test.csv | curl -XPOST -H 'Content-Type:multipart/form-data' --form 'file=@-;filename=test.csv' $url
解决方案
如果你添加--trace-ascii -
到命令行,你会看到 curlContent-Type
默认已经使用了它(-XPOST
也没有帮助)。而是您的固定-F
选项起到了作用!
推荐阅读
- symfony4 - 控制器 Symfony4 中的密码验证
- c# - 比较列表
> 在 C# 中 - python - Beautiful Soup 过滤多个关键字
- javascript - 如何将 Firestore 中的数据转换为全局变量?
- java - 为什么 LocalDateTime 无法从字符串解析?
- angular - Angular:mat-select,反应形式,禁用不显示虚线
- c++ - C++模板类静态成员初始化
- c# - 在具有变化结构的数据库上运行 linq-to-sql 查询
- python-3.x - 无法抓取所有数据
- javascript - 我在一个组件中同时使用两个按钮,当我单击它而不是另一个按钮时,我只希望一个按钮工作