Hey everyone,
I'm looking into vibe-d, particularly how to build a REST API server.
Given this struct:
struct Project
{
string project_id;
string name;
}
I could write a GETter like this:
@path("projects/:project_id")
Project getProject(string _project_id);
and a POST could look like this:
Project postProjects(string project_id, string name);
So far so good, this works.
What I don't like about the POST, though, is that I have to repeat struct Project
's members in the parameter list. This is redundant and will be inconvenient every time the struct changes, especially on ones with many members.
What I would prefer to have is something like this:
Project postProjects(Project project);
This is possible, the problem is that the POST request body now must look like this
{
project: {
"project_id": "dummy_id",
"name": "dummy"
}
}
rather than simply this
{
"project_id": "dummy_id",
"name": "dummy"
}
So my question is, is it possible to have vibe-d parse the request body into a struct "implicitly"?
I hope the explanation was understandable. :)
Any help would be much appreciated.
Cheers,
bomat