NagyZoltanPeter 6d81e3841a
chore: Allow text/plain content type descriptor for json formatted content body (#2209)
* Allow text/plain content type descriptor for json formatted content body. Refactored duplicated encode/decode functions for rest api

* Fix relay endpoint decodings of content bodies to accept text/plain

* Added support for content body decoder for checking media type if additional parameters are present

* Fix wrong usage of ContentTypeData - appeared only for tests
2023-11-14 16:59:53 +01:00

36 lines
746 B
Nim

when (NimMajor, NimMinor) < (1, 4):
{.push raises: [Defect].}
else:
{.push raises: [].}
import
chronicles,
json_serialization,
json_serialization/std/options,
presto/[route, client],
stew/byteutils
import
../serdes,
../responses,
../rest_serdes,
./types
export types
logScope:
topics = "waku node rest admin api"
proc encodeBytes*(value: seq[string],
contentType: string): RestResult[seq[byte]] =
return encodeBytesOf(value, contentType)
proc getPeers*():
RestResponse[seq[WakuPeer]]
{.rest, endpoint: "/admin/v1/peers", meth: HttpMethod.MethodGet.}
proc postPeers*(body: seq[string]):
RestResponse[string]
{.rest, endpoint: "/admin/v1/peers", meth: HttpMethod.MethodPost.}