javascript - 在koa中post请求中接收不到页面传到的值
PHPz
PHPz 2017-04-11 11:02:49
[JavaScript讨论组]

1.在学习koa的时候用koa-generator生成的项目,里面自带了koa-bodyparser。但是我在使用post请求的时候发现页面传过来的值接收不到,去查了api也没找到什么问题。

  1. 相关代码

app.js

bodyParser = require('koa-bodyparser');
app.use(bodyParser());

new.ejs

        

返回

//users.js 路由

var router = require('koa-router')();
var mongoose = require('mongoose');
var User = mongoose.model('User');
router.get('/', list);
router.get('/new', add);
router.post('/create', save);

function *add(next) {
    yield this.render('/users/new', {
        title: '添加用户',
        user: {
            email: '',
            nickName: '',
            password: '',
            gender: 0,
            phone: 1,
            imgUrl: '',
            address: ''
        }
    });
}

function *save(next) {
    console.log(this.request.body);
    var user = this.request.body;
    user.createTime = new Date;
    user.lastLogin = new Date;
    var id = users.push(user)
    users.id = id - 1;
    this.redirect('/users');
}

附上依赖

{
  "name": "node-koa",
  "version": "0.1.2",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "co": "^4.6.0",
    "debug": "^2.2.0",
    "ejs": "~2.3.3",
    "koa": "^1.1.2",
    "koa-bodyparser": "^2.2.0",
    "koa-json": "^1.1.1",
    "koa-logger": "^1.3.0",
    "koa-mongoose": "^1.0.9",
    "koa-onerror": "^1.2.1",
    "koa-router": "^5.3.0",
    "koa-static": "^1.5.2",
    "koa-views": "^3.1.0",
    "mongoose": "^4.4.19",
    "uuid": "^2.0.2"
  },
  "devDependencies": {
    "koa-webpack-dev-middleware": "^1.2.1",
    "webpack": "^1.13.1",
    "webpack-dev-server": "^1.14.1"
  }
}

3.错误(点击看git动态图)
error

4.项目放在github上
node-koa

PHPz
PHPz

学习是最好的投资!

全部回复(3)
大家讲道理
<input type="email" class="form-control" id="email" placeholder="邮箱">
<select name="gender" id="gender" title="">

try

<input type="email" class="form-control" name="email" id="email" placeholder="邮箱">
阿神

你装的koa-bodyparser什么版本,装2.2.0再试试

黄舟

1)<input type="email" class="form-control" name="email" id="email" placeholder="邮箱" value="<%= user.email %>">

2)检查一下node版本,看看是不是node版本过低

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号