Compare commits

..

No commits in common. "master" and "2.1.1" have entirely different histories.

2 changed files with 9 additions and 13 deletions

View file

@ -1,4 +1,4 @@
![curl-screenshot](https://codeberg.org/attachments/9bdd8005-5eea-4add-89c3-8efc61d06b6f)
![screenshot](https://codeberg.org/attachments/1cae98c6-0873-41fd-aad0-d33bf495fc50)
![license](https://licensebuttons.net/p/zero/1.0/88x31.png)

20
curl.sh
View file

@ -1,8 +1,8 @@
#!/bin/bash
# Check if the correct number of arguments is provided
if [ -z "${1:-}" ]; then
echo "Usage: $0 <url> [request_method]"
if [ "$#" -ne 2 ]; then
echo "Usage: $0 <url> <request_method>"
exit 1
fi
@ -17,16 +17,13 @@ RESP_BODY_RAW_FILE="curl/resp_body.txt"
RESP_BODY_JSON_FILE="curl/resp_body.json"
url="$1"
method="${2:-GET}"
method="$2"
# Append url search parameters
if [ -f $REQ_PARAMS_FILE ]; then
# Parse each newline as a separate parameter joined by a "&"
params=$(tr '\n' '&' < "$REQ_PARAMS_FILE" | sed 's/&$//')
if [ -n "$params" ]; then
url="${url}?${params}"
fi
url="${url}?${params}"
fi
# Prepare curl
@ -66,12 +63,11 @@ fi
# Save the response headers and body
curl_cmd="$curl_cmd -o $RESP_BODY_RAW_FILE -D $RESP_HEADERS_FILE"
# Dispatch request
echo -e "\e[0;92mRequest >\e[0m ${method} ${url}"
# Execute curl
eval "clear"
echo -e "${method} ${url}"
eval $curl_cmd
# Copy the raw respone body to a pretty-printed JSON file
jq . $RESP_BODY_RAW_FILE > $RESP_BODY_JSON_FILE
# Print the response code
echo -e -n "\e[0;94mResponse <\e[0m "; head -n 1 $RESP_HEADERS_FILE