这有效:
curl --url http://someurl.tld --form "apikey=39485730"
这不会:
curl --url http://someurl.tld --form "apikey=<keyfile"
错误:无效的 API 密钥
cURL 手册 ( http://curl.haxx.se/docs/manpage.html ) 明确指出
-F/--form (HTTP) 这让 curl 模拟用户按下提交按钮的填写表单。[...] 要强制“内容”部分成为文件,请在文件名前加上 @ 符号。要仅从文件中获取内容部分,请在文件名前加上符号 <。@ 和 < 之间的区别在于 @ 使文件作为文件上传附加在帖子中,而 < 生成文本字段并仅从文件中获取该文本字段的内容。
FWIW:如果我使用 --form "apikey=@keyfile" 我得到错误:“API key is required”。这证实了 @ 肯定是错误的(我同意)。但是为什么不起作用<
,该怎么办呢?
看起来文件的内容要么没有传递,要么错误。因此,我已经四重确定,文件中只有 api 密钥(此处:39485730),没有其他内容。
如果我尝试这样做很重要:
我需要在脚本中使用这个 curl 命令,并且不想将 API 密钥放在那里。相反,它应该在运行此脚本的用户的 HOME 中,只有他可以读取,其他人不能读取。
提前感谢您的任何见解... :-)