54 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			54 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
 | |
|     exec curl -is "$URL/$2" | 
 | |
|         sed -En 's/^[lL]ocation: (.*)/\1/p'
 | |
| 
 | |
| elif [ "$1" = s ] || [ "$1" = sl ]; then
 | |
|     exec curl \
 | |
|         --fail \
 | |
|         -w "${URL}%header{location}" \
 | |
|         -XPOST \
 | |
|         -d "$2" \
 | |
|         -H "X-Api-Key: $API_KEY" \
 | |
|         "$URL/$1/$3"
 | |
| 
 | |
| elif [ "$1" = p ] || [ "$1" = pl ]; then
 | |
|     exec 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
 | |
|     exec curl \
 | |
|         --fail \
 | |
|         -v \
 | |
|         -w "${URL}%header{location}" \
 | |
|         -XPOST \
 | |
|         -H "X-Api-Key: $API_KEY" \
 | |
|         -H "X-Lander-Content-Type: ${content_type}" \
 | |
|         -H "X-Lander-Filename: ${filename}" \
 | |
|         -T "$2" \
 | |
|         "$URL/$1/$3"
 | |
| 
 | |
| elif [ "$1" = d ]; then
 | |
|     exec curl \
 | |
|         --fail \
 | |
|         -XDELETE \
 | |
|         -H "X-Api-Key: $API_KEY" \
 | |
|         "$URL/$2"
 | |
| fi
 |