If your REST URL looks like this:
http://some.server:8080/URI/TO/RESTful/API
1.
Construct your JSON variable.
#No indentations otherwise heredoc may break. json=$(cat <<EOF { "personID": $personID, "firstname": "$firstname", "lastname": "$lastname" } EOF )
2.
Calculate Content-Length.
len=${#json}
3.
Open TCP socket using descriptor (3).
#exec 3<>/dev/tcp/SERVER/PORT exec 3<>/dev/tcp/some.server/8080
4.
ECHO spoofed header to descriptor (3).
#This must be on 1 line. echo -e "POST /URI/TO/RESTful/API HTTP/1.1\r\nHost: some.server\r\nContent-type: application/json\r\nContent-length: $len\r\nConnection: close \r\n\r\n$json">&3
# Breaking down the header # POST /URI/TO/RESTful/API HTTP/1.1\r\n # Host: some.server\r\n # Content-type: application/json\r\n # Content-length: $len\r\n # Connection: close \r\n\r\n # $json
5.
Show response and close descriptor (3).
cat <&3 exec 3<&-