2016-08-01 3 views
1

私は少し問題がある初心者です。私は、私のフォームのテキストをbody-parserを使って得ようとしている次のreq.bodyに渡すように見えません。件名には複数の質問がありますが、今のところ助けにはならないようです。私を正しい方向に導いてください。 MODSはロックしないでください。私は検索し、適切な答えを見つけることができた。ありがとうございました。Angularjs、Expressjsを使用してフォームデータを入力

エクスプレス:

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> 
+0

あなたが傍受されています'post'コール?実際のURLはないようです。 – AranS

+0

説明してください。私は私が必要としていたことを知らなかった。私は "/"と思ったのです – Stephen

+0

私は今、URLを変更して、404を得ることができませんPOST /エラー – Stephen

答えて

0

あなたは明らかにあなたがformDataオブジェクトを送っている、サーバーに何のオブジェクトtextを送るんです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'}); 
+0

これは動作しませんが、役立つかもしれません。私が(req.body.formData.text)をログすると、私は500サーバのタイプエラーをすべて取得します。 "TypeError:C:\ Users \ Stephen \ Dropbox \ apps \ serverv1 \ server.jsの未定義 のプロパティ 'text'を読み取れません:27:34 – Stephen

関連する問題