У меня есть API, и я должен отправить запрос PATCH, если мне нужно обновить объект; проблема в том, что когда я отправляю запрос PATCH, тело всегда не определено.NodeJS: Как использовать форму html для отправки запроса PATCH & DELETE
это как я посылаю запрос PATCH Ex.
app.patch('/applications/update/:application_id', function(request, response) {
var application_id = request.params.application_id;
require('../../models/applications/update_application_by_id').get(request.body, application_id, function(result){
response.render('applications/details', {application_details:result});
});
});
<form enctype="application/json" class="form-horizontal" role="form" method="post" action="/applications/update/{{application_details._id}}">
<input type="hidden" name="_method" value="PATCH" />
<input type="text" name="name" class="form-control">
<button type="submit" class="btn btn-yellow pull-right">update</button>
</form>
и это, как я справиться с этим
exports.get = function(request_body, application_id, call_back){
var http_request = unirest("patch", "https://xx/api/applications/"+application_id);
http_request.headers({
"cache-control": "no-cache",
"content-type": "application/json",
"x-application-key": "xxxxxxxxxxxxxxxxxx"
});
http_request.type("json");
http_request.send(request_body);
http_request.end(function (http_response) {
console.log(http_request.body);
if (http_response.error) throw new Error(http_response.error);
return call_back(http_response.body);
});
}
я уже добавить <тип = "скрытый" имя входного = "_ метод" значение = «PATCH» /> внутри формы и все еще не работает –
Это не сработает, если вы не будете явно обращаться с y ou on. ExpressJS ** не делает это для вас. – kazenorin