Express-为什么POST请求按预期运行时,PUT请求为什么会返回404错误?

myNewAccount

环境: Node.js和Express

我正在使用HTML表单通过POST请求提交数据,它可以按预期工作。但是,当我将其切换为PUT请求时,我收到了404 error在地址栏中,我从表单获取req.body。

http://localhost:8080/save_register?email=test%40gmail.com&firstName=hello&lastName=world&phone=555-555-5555&password=11111&passwordConfirm=11111

为什么会这样呢?以下是使用该PUT请求的服务器的简化版本

来自middleware.js文件。

router.get('/register', function(req, res) {
    res.render('register');
});

router.put('/save_register', function(req, res) {

    // lets of processing req.body here...

    if(itWorked === true) {
        return res.redirect('/register_success');
    } else {
        res.render('register');
    }
});

router.get('*', function(req, res) {
    res.status(404).render('page_not_found');
});

从register.ejs文件中。

<form action="/save_register" method="PUT">

在middleware.js中,router.put将更改为router.post和,在register.ejs中将method="PUT"其更改为method="POST"按预期工作。我必须缺少明显的东西,但看不到。

jfriend00

HTML表单PUT支持GETPOST如果为form方法指定aGET或a之外的其他内容POST,则浏览器会将其视为a GET,因此这就是为什么您看到URL中发送的所有数据的原因。

您已经发现,这里有一个很好的描述:为什么HTML表单上没有PUT和DELETE方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么nodejs express post请求中的“body”为空?

为什么通过函数运行时请求返回错误?

在Express JS中使用get请求中的switch返回错误为什么?

为什么在请求app.css时express返回index.html?

为什么express的res.download()方法导致“请求中止”错误?

为什么来自 Node/Express 的 POST 和 PUT 请求在 React/Redux 中不起作用?我的 GET 和 DELETE 请求都可以正常工作。所有请求都在 Postman 中工作

为什么此ajax发布请求在Nodejs express中执行发布请求之前就立即使用数据执行GET请求?

为什么 express-rate-limit 没有按预期工作?

为什么在 express.js 中 get() 成功处理请求后 use() 方法仍然执行?

为什么访问本地服务的Express应用程序时nodejs http请求不起作用?

为什么 Axios GET 请求在 Node Express 中发送两次?

无法从 Express.js PUT 路由获取,为什么?

为什么Left函数返回运行时错误'424'?

为什么我的PUT请求出现404状态错误?

express-locale始终返回默认值-为什么?

为什么Axios在Express中返回“绑定的consoleCall”?

为什么我对 PHP 文件的 Angular POST 请求返回 404?

为什么Chrome会在调用IIS Express上运行的asp.net核心应用程序时重复两次请求

Express Knex请求查询

请求在 express 中挂起

访问 Express 会话/请求

为什么Express不是中间件?

为什么未在Express中设置cookie?

Express Server - GET 请求返回 404(未找到)

Express.js 路由器发布请求返回 404

TypeORM/Express 路由器 API 响应 404 POST 请求

为什么在正常浏览无法正常运行时,在React / GraphQL应用上运行Cypress会返回网络错误?

对Express服务器做出反应的Axios POST请求返回404

Axios POST 请求将数据发送到 Express 服务器但错误 404