我有一个带有以下curl命令的bash脚本:
curl -v -X GET https://example.com -H ~/Desktop/headers.txt -o ~/Desktop/file.txt
Run Code Online (Sandbox Code Playgroud)
当我运行 bash 脚本时,我收到了 unothorized 401。显然我没有正确读取头文件。我的头文件看起来像“授权:承载 40bsafsdgds34234....”。我的curl版本是7.26
-H选项默认从参数(文本)而不是文件中读取标头信息。
因为curl 7.55您可以使用-H @file从文件中读取。
对于旧版本,您需要一个小脚本,如下所示:
curl $(xargs -a headers.txt -I{} printf '-H "%s" ' "{}") URL
Run Code Online (Sandbox Code Playgroud)
一些链接:
选择:
创建配置文件,包括-H "...":
-H "Authorization: bearer token"
-H "Another header"
Run Code Online (Sandbox Code Playgroud)
并使用-K/--config <config file>选项。
或通过以下方式自动使用您的原始文件sed:
curl -K <(sed -r 's/^(.*)$/-H "\1"/' headers.txt) URL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13625 次 |
| 最近记录: |