Перенаправление вызова API REST curl в файл не работает с большой полезной нагрузкой - PullRequest
0 голосов
/ 11 июня 2019

Работает и пишет в файл без проблем:

curl -x myproxy.baseurl.com:80 -H "Authorization: Token mytoken" https://app.api.com/?status=Approved > output.txt

Отправляет вывод в командную строку и зависает, пока я не нажму ctl-c:

curl -x myproxy.baseurl.com:80 -H "Authorization: Token mytoken" https://app.api.com/?status=Approved&page_size=100000 > output.txt

есть какие-то ограничения по размеру полезной нагрузки?Длина ответа JSON при первом вызове составляет 270 928 символов.Длина второго, двухпараметрического вызова составляет 622 133.

Может ли быть проблема с превышением времени ожидания?Первая полезная нагрузка занимает ~ 5 секунд, а вторая полезная нагрузка занимает ~ 11 секунд при тестировании с SoapUI.

ОБНОВЛЕНИЕ: Если я не ctl-c во втором вызове, в конце концов curl делает тайм-аут: curl: (28) connect() timed out!

ОБНОВЛЕНИЕ 2: FWIW, это часть сценария оболочки, который я пишу, так что да, это проблема программирования.: P

1 Ответ

2 голосов
/ 11 июня 2019

Убедитесь, что в кавычках указан ваш URL, потому что оболочка интерпретирует амперсанд, чтобы поставить скручивание в фоновом режиме.

curl -x myproxy.baseurl.com:80 -H "Authorization: Token mytoken" "https://app.api.com/?status=Approved&page_size=100000" > output.txt
...