Search code examples
restgetrestify

Passing parameters in BODY with GET request


I want to pass some data within request body, but I'm using GET request, because I just want to modify this data and send it back.

I know that it is bad practice to use body with GET requests.

But what should I do with this situation if I want to build correct RESTful service?

P.S. I'm not changin any object on server. I'm not putting any new object on server.


Solution

  • You want a POST. Something like

    POST /hashes
    {
        "myInput": ...
    }
    

    The response would be the hashed value. There's no rule that the created resource must be retained by the server.

    From the RFC:

    The action performed by the POST method might not result in a
    resource that can be identified by a URI. In this case, either 200
    (OK) or 204 (No Content) is the appropriate response status,
    depending on whether or not the response includes an entity that
    describes the result.