Search code examples
postjwtnim-langprologue

Nim - How to access raw POST request body in prologue framework


I recently picked up Nim and am in the process of re-implementing an existing web-application of mine to get some experience in the language.

This web-application used JWT for authentication, with the typical split into an access-token and a refesh-token.

The old way my application did refresh, was by receiving the refresh token via a POST request. The request body of that POST request would just be a raw JSON string and my application would grab the string off of that body and do its magic. The string would look like this:

{"refresh":"<JWT TOKEN STRING>"}

I've run into an issue when I wanted to access that raw JSON string in Prologue. There doesn't seem to be a way to do this.

When looking at the context's request, neither the PostParams nor the FormParams contain anything, they're empty. I can't find anything in the documentation about JSON-request bodies either and nothing in the source code looks like it is what I would want.

Is there no way for me to access the raw request body? Am I forced to change the way I send my refresh token?


Solution

  • After some more skillfull searching through the documentation I stumbled upon the answer I desired. There is a body() proc that allows you to access the raw HTTP body.