Комментарии 8
Как curl вообще относится к JS?
Так можно ведь просто копировать сгенерированную swaggerui строку, где уже проставлены все необходимые ключи :)
Для быстрого тестирования curl подходит лучше, чем Axios в Node.js или настройка запроса в Postman, если вы знакомы с их синтаксисом.
С этим в корне не согласен, ту же авторизацию прописывать флагами в командной строке руками, когда можно двумя кликами в постмане поставить или вынести в переменную при использовании axios или других инструментов для запроса из js.
Фишка, которую часто использую. Не совсем про curl, скорее про shell / bash script. Но и оригинальная статья не совсем про JS. :)
Внимание: в коде используется небезопасный eval, не копируйте это бездумно на важный прод!!!
Внимание: в коде используется небезопасный eval, не копируйте это бездумно на важный прод!!!
Разделение по переменным STDOUT / STDERR / EXIT CODE в вызове curl из shell
call_curl () {
# prepared command line for curl call
CURLARGS="-i https://httpbin.org/get?answer=42"
# Calling curl & capturing stdout, stderr and exit code using
# tagging approach by Warbo, ref: http://stackoverflow.com/a/37602314
CURLOUT=$({ { eval "curl $CURLARGS"; echo -e "EXITSTATUS:$?" >&2; } | sed -e 's/^/STDOUT:/g'; } 2>&1)
CURLEXITSTATUS=$(echo "$CURLOUT" | grep "^EXITSTATUS:" | sed -e 's/^EXITSTATUS://g')
CURLSTDOUT=$(echo "$CURLOUT" | grep "^STDOUT:" | grep -v "^EXITSTATUS:" | sed -e 's/^STDOUT://g')
CURLSTDERR=$(echo "$CURLOUT" | grep -v "^STDOUT:\|^EXITSTATUS:")
if [ $CURLEXITSTATUS -ne 0 ]; then
echo -e "Error in curl: $CURLSTDERR" > /dev/stderr
return 1;
else
# do something with $CURLSTDOUT and do output
return 0;
fi
}
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Что JavaScript-разработчику следует знать о Curl