0%

how to install and use resty command line client for interacting with rest services

Guide

install

You have curl, right? Okay.

1
curl -L https://raw.githubusercontent.com/micha/resty/master/resty > resty

Source the script before using it.

1
. resty

Once resty is installed, set your REST host to which you will be making your requests.

1
2
resty http://127.0.0.1:8080/data
http://127.0.0.1:8080/data*

And now you can Make some HTTP requests.

1
2
3
4
5
6
7
8
9
10
$ GET /blogs.json
[ {"id" : 1, "title" : "first post", "body" : "This is the first post"}, ... ]

$ PUT /blogs/2.json '{"id" : 2, "title" : "updated post", "body" : "This is the new."}'
{"id" : 2, "title" : "updated post", "body" : "This is the new."}

$ DELETE /blogs/2

$ POST /blogs.json '{"title" : "new post", "body" : "This is the new new."}'
{"id" : 204, "title" : "new post", "body" : "This is the new new."}

usage

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
source resty [-W] [remote] [OPTIONS]    # load functions into shell
resty [-v] # prints current request URI base
resty <remote> [OPTIONS] # sets the base request URI

HEAD [path] [OPTIONS] # HEAD request
OPTIONS [path] [OPTIONS] # OPTIONS request
GET [path] [OPTIONS] # GET request
DELETE [path] [OPTIONS] # DELETE request
PUT [path] [data] [OPTIONS] # PUT request
PATCH [path] [data] [OPTIONS] # PATCH request
POST [path] [data] [OPTIONS] # POST request
TRACE [path] [OPTIONS] # TRACE request

Options:

-Q Don't URL encode the path.
-q <query> Send query string with the path. A '?' is prepended to
<query> and concatenated onto the <path>.
-W Don't write to history file (only when sourcing script).
-V Edit the input data interactively in 'vi'. (PUT, PATCH,
and POST requests only, with data piped to stdin.)
-Z Raw output. This disables any processing of HTML in the
response.
-v Verbose output. When used with the resty command itself
this prints the saved curl options along with the current
URI base. Otherwise this is passed to curl for verbose
curl output.
--dry-run Just output the curl command.
<curl opt> Any curl options will be passed down to curl.

Other Tools

postman

Postman is a collaboration platform for API development. Postman’s features simplify each step of building an API and streamline collaboration so you can create better APIs—faster

download Postman-linux-x64-7.10.0.tar.gz from here

1
2
3
tar xzvf Postman-linux-x64-7.10.0.tar.gz
cd Postman
./Postman

now we can create free account and play with postman.

chrome developer tools

F12—>Network.

httpbin

A simple HTTP Request & Response Service.

see httpbin

Reference

History

  • 20191106: created.