我正在尝试刷新我的JS并使用vanilla JS处理TODO应用程序。
我正在尝试与已经编写的快速服务器集成,该服务器具有HTTP API
以下是服务器的相关方法:
// Create your HttpRequests objects
var in = Sink....
// Use Akka to connect
var http.superPool[NotUsed]
// Parse the response
val httpResponse2HttpStrict = Flow[(Try[HttpResponse], NotUsed)].mapAsync(1)({case(response, _) => response match {
case Success(response) => response.entity.toStrict(timeout)
case Failure(e) => handleErrorHere(e)
})
// Connect it
in ~> httpClient ~> httpResponse2HttpStrict ~> Flow[HttpEntity].map(entity => processTheBody(entity)
这是我正在尝试使用的代码
function isValid(todo) {
return todo.complete != undefined && todo.text != undefined;
}
function AddTodo(todo) {
todo.id = uid();
Todos.push(todo);
}
app.post('/todos', function(req, res) {
var todo = req.body;
if (!isValid(todo)) {
res.status(422).send(JSON.stringify({
message: 'invalid todo'
}));
}
else {
var addedTodo = AddTodo(todo);
res.status(200).send(JSON.stringify(todo));
}
});
不幸的是,这种方法产生了422错误,我似乎无法弄清楚原因。