使用Angularjs,Expressjs输入表单数据,

时间:2016-08-01 10:47:02

标签: angularjs express

我是一个有点问题的初学者。我似乎无法将我的表单中的文本传递给我应该使用body-parser的后续req.body。关于这个问题有很多问题,但到目前为止似乎都没有任何帮助。请指导我正确的方向。 MODS请不要锁定。我搜索过,可以找到合适的答案。谢谢。

快递:

app.use(bodyParser.urlencoded({'extended' : 'true'}));

app.use(bodyParser.json());

app.use(bodyParser.json({type: 'application/vnd.api+json'}));
app.use(methodOverride());




app.post('/', function(req, res){
        console.log(req.body.text);
        res.redirect('https://google.com');
        res.end();

角:

angular.module('application', [])

.controller('mainController', function($scope, $http) {

    $scope.formData = {};

    $scope.submitForm = function() {
    $http.post('/', $scope.formData)
            .success(function(data) {
                console.log(data);
            });
    };
}

HTML:

<form method="post" action="/">
                <div class="form-group">


                    <input type="text" class="form-control input-lg text-center" placeholder="email" ng-model="formData.text">
                </div>


                <button type="submit" class="btn btn-primary btn-lg" ng-submit="submitForm()">Add</button>
            </form>

1 个答案:

答案 0 :(得分:0)

您显然没有向服务器发送任何对象text,而是发送包含formData属性的text对象。

您可以尝试:

console.log(req.body.formData.text);

然后,如果要检索角度内的某些数据,则必须返回数据:

app.post('/', function(req, res){
    console.log(req.body.formData.text);
    res.send("blablabla");

res.json({response: 'response'});