首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用node.js和express的简单登录表单

使用node.js和express的简单登录表单
EN

Stack Overflow用户
提问于 2015-04-23 13:54:02
回答 2查看 2.6K关注 0票数 0

我开始学习nodejs,并在他们的文档中安装了express。现在,在这个过程中,我想要创建一个登录表单,在单击登录时,我希望它传递给、check 路由来检查凭据。

我不会在这里贴出完整的代码。只是其中的一部分。

代码语言:javascript
复制
var routes = require('./routes/index'); //default with express
var users = require('./routes/users'); //default with express
var login = require('./routes/login'); //created by me
var check = require('./routes/check'); //created by me.

更新2

代码语言:javascript
复制
app.use('/', routes);
app.use('/users', users);
app.use('/login', login);
app.use('/check', check);

登录路径运行良好,我得到了输出。当我单击登录时,它进入路由。

代码语言:javascript
复制
http://localhost:3000/check

扔404找不到。

然而,如果我直接在浏览器中输入url,我将在浏览器中获得输出。

check.js

代码语言:javascript
复制
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});

更新check.js

代码语言:javascript
复制
var express = require('express');
var router = express.Router();

/* GET users listing. */
router.post('/check', function(req, res, next) {
  res.send('respond with a resource');
});

module.exports = router;

login.jade

代码语言:javascript
复制
extends layout
  block content
    div(class="col-md-4 col-lg-4 col-md-offset-4 col-lg-offset-4")
    h1 User Login
    form(name="login", action="/check", method="post")
      div(class="form-group")
        input(type="text", name="user" class="form-control")
      div(class="form-group")
        input(type="password", name="pass" class="form-control")
      div(class="form-group")
        input(type="submit", value="login" class="btn btn-warning form-control")

我还在寻找创建node.js应用程序的基本文档,这也不复杂,对于菜鸟来说也很容易理解。

更新1:单击登录按钮时出错

代码语言:javascript
复制
Error: Not Found
    at app.use.res.render.message (/home/alaksandar/Desktop/Untitled Folder/myapp/app.js:38:13)
    at Layer.handle [as handle_request] (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/layer.js:82:5)
    at trim_prefix (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:302:13)
    at /home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:270:7
    at Function.proto.process_params (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:321:12)
    at next (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:261:10)
    at /home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:603:15
    at next (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:246:14)
    at Function.proto.handle (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:166:3)
    at router (/home/alaksandar/Desktop/Untitled Folder/myapp/node_modules/express/lib/router/index.js:35:12)
EN

Stack Overflow用户

发布于 2015-04-23 16:01:20

更新

在app.js中使用

app.use('/check',check)

在check.js中使用

代码语言:javascript
复制
 router.post('/', function(req, res, next) {
res.send('respond with a resource');
});

并确保正在使用module.exports导出此函数。

在您的check.js文件中,需要使用

代码语言:javascript
复制
router.post('/check', function(req, res, next) {
res.send('respond with a resource');
});

而不是

代码语言:javascript
复制
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});
票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29825612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档