gpt4 book ai didi

html - NodeJS : How to use html form to send PATCH & DELETE request

转载 作者:太空宇宙 更新时间:2023-11-04 00:37:59 25 4
gpt4 key购买 nike

我有一个 API,如果我需要更新对象,我应该发送 PATCH 请求;问题是,当我发送 PATCH 请求时,主体始终是未定义的。

这就是我发送 PATCH 请求的方式。

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);
});
}

最佳答案

您最好安装并 app.use()ing 中间件 express/methodoverride:

https://github.com/expressjs/method-override/blob/master/README.md

相当标准的方法,但请注意它所期望的实际字段名称。

关于html - NodeJS : How to use html form to send PATCH & DELETE request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38112722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com