53 lines
1.1 KiB
Bash
Executable File
53 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env sh
|
|
|
|
API_KEY=test
|
|
URL=http://localhost:18080
|
|
|
|
if [[ "$2" != '-' ]]; then
|
|
filename="$2"
|
|
content_type="$(file --mime-type --brief $2)"
|
|
fi
|
|
|
|
|
|
if [ "$1" = g ]; then
|
|
curl -is "$URL/$2" |
|
|
sed -En 's/^[lL]ocation: (.*)/\1/p'
|
|
|
|
elif [ "$1" = s ] || [ "$1" = sl ]; then
|
|
curl \
|
|
--fail \
|
|
-w "${URL}%header{location}" \
|
|
-XPOST \
|
|
-d "$2" \
|
|
-H "X-Api-Key: $API_KEY" \
|
|
"$URL/$1/$3"
|
|
|
|
elif [ "$1" = p ] || [ "$1" = pl ]; then
|
|
curl \
|
|
--fail \
|
|
-w "${URL}%header{location}" \
|
|
-XPOST \
|
|
-H "X-Api-Key: $API_KEY" \
|
|
-H "X-Lander-Filename: ${filename}" \
|
|
--data-binary @"$2" \
|
|
"$URL/$1/$3"
|
|
|
|
elif [ "$1" = f ] || [ "$1" = fl ]; then
|
|
curl \
|
|
--fail \
|
|
-w "${URL}%header{location}" \
|
|
-XPOST \
|
|
-H "X-Api-Key: $API_KEY" \
|
|
-H "X-Lander-Content-Type: ${content_type}" \
|
|
-H "X-Lander-Filename: ${filename}" \
|
|
--data-binary @"$2" \
|
|
"$URL/$1/$3"
|
|
|
|
elif [ "$1" = d ]; then
|
|
curl \
|
|
--fail \
|
|
-XDELETE \
|
|
-H "X-Api-Key: $API_KEY" \
|
|
"$URL/$2"
|
|
fi
|