Software /
code /
prosody-modules
Comparison
mod_rest/example/rest.sh @ 5856:75dee6127829 draft
Merge upstream
author | Trần H. Trung <xmpp:trần.h.trung@trung.fun> |
---|---|
date | Tue, 06 Feb 2024 18:32:01 +0700 |
parent | 5689:e5ad3f1f48bd |
comparison
equal
deleted
inserted
replaced
5664:52db2da66680 | 5856:75dee6127829 |
---|---|
11 | 11 |
12 # Settings | 12 # Settings |
13 HOST="" | 13 HOST="" |
14 DOMAIN="" | 14 DOMAIN="" |
15 | 15 |
16 SESSION="session-read-only" | |
17 | |
16 if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/restrc" ]; then | 18 if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/restrc" ]; then |
17 # Config file can contain the above settings | 19 # Config file can contain the above settings |
18 source "${XDG_CONFIG_HOME:-$HOME/.config}/restrc" | 20 source "${XDG_CONFIG_HOME:-$HOME/.config}/restrc" |
19 | 21 |
20 if [ -z "${SCOPE:-}" ]; then | 22 if [ -z "${SCOPE:-}" ]; then |
21 SCOPE="openid xmpp" | 23 SCOPE="openid xmpp" |
22 fi | 24 fi |
23 fi | 25 fi |
24 | 26 |
25 if [[ $# == 0 ]]; then | 27 if [[ $# == 0 ]]; then |
26 echo "${0##*/} [-h HOST] [/path] kind=(message|presence|iq) ...." | 28 echo "${0##*/} [-h HOST] [-rw] [/path] kind=(message|presence|iq) ...." |
27 # Last arguments are handed to HTTPie, so refer to its docs for further details | 29 # Last arguments are handed to HTTPie, so refer to its docs for further details |
28 exit 0 | 30 exit 0 |
29 fi | 31 fi |
30 | 32 |
31 if [[ "$1" == "-h" ]]; then | 33 if [[ "$1" == "-h" ]]; then |
32 HOST="$2" | 34 HOST="$2" |
33 shift 2 | 35 shift 2 |
34 elif [ -z "${HOST:-}" ]; then | 36 elif [ -z "${HOST:-}" ]; then |
35 HOST="$(hostname)" | 37 HOST="$(hostname)" |
38 fi | |
39 | |
40 if [[ "$1" == "-rw" ]]; then | |
41 # To e.g. save Accept headers to the session | |
42 SESSION="session" | |
43 shift 1 | |
36 fi | 44 fi |
37 | 45 |
38 if [[ "$HOST" != *.* ]]; then | 46 if [[ "$HOST" != *.* ]]; then |
39 # Assumes subdomain of your DOMAIN | 47 # Assumes subdomain of your DOMAIN |
40 if [ -z "${DOMAIN:-}" ]; then | 48 if [ -z "${DOMAIN:-}" ]; then |
53 if [[ "$1" == /* ]]; then | 61 if [[ "$1" == /* ]]; then |
54 GET_PATH="$1" | 62 GET_PATH="$1" |
55 shift 1 | 63 shift 1 |
56 fi | 64 fi |
57 | 65 |
58 https --check-status -p b --session rest -A oauth2 -a "$HOST" --oauth2-scope "$SCOPE" "$HOST/rest$GET_PATH" "$@" | 66 https --check-status -p b --"$SESSION" rest -A oauth2 -a "$HOST" --oauth2-scope "$SCOPE" "$HOST/rest$GET_PATH" "$@" |