Это работает:
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 эмулировать заполненную форму, в которой пользователь нажал кнопку отправки. [...] Чтобы часть содержимого была файлом, добавьте к имени файла знак @. Чтобы просто получить часть содержимого из файла, добавьте к имени файла символ <. Разница между @ и <заключается в том, что @ заставляет файл прикрепляться к сообщению в качестве файла, а <- создает текстовое поле и просто получает содержимое этого текстового поля из файла. </p>
FWIW:
Если я использую --form "apikey = @ keyfile", я получаю ошибку: "Требуется ключ API".
Это подтверждает, что @ определенно не так (что я в порядке).
Но почему <
не работает, и что с этим делать?
Похоже, что содержимое файла либо не передано, либо неправильно. Таким образом, я в четыре раза убедился, что в файле есть только ключ API (здесь: 39485730) и больше ничего.
Если важно, почему я пытаюсь это сделать:
Мне нужна эта команда curl в скриптах, и я не хочу помещать туда ключ API. Вместо этого он должен быть в ДОМЕ пользователя, который запускает этот сценарий, только для чтения, и никто другой.
Заранее благодарим вас за понимание ...: -)