2017-05-16 4 views
1

失敗:/ REQUEST_METHODNodeJS Ajaxリクエストは、私が発現するが、すべての時間が私のようなエラーを取得するには、クライアントから提出しようとしていますフォームしている

は、以下のコード

ある投稿することはできません

ました私がしようとしています:

index.htmlを

そしてexpressJsで:

server.js

var express  = require('express'); 
var bodyParser = require('body-parser') 
app.use(bodyParser()); 
. 
. 
router.post('/request_method', function(req, res){ 
    console.log(req.body); 
    console.log(req.ip); 
}); 
+0

URL名..eg.localhost:5000/xxxx – zabusa

+0

他のエラー情報をすべて入れますか?回答はどのようなステータスですか(例:devtoolsのチェックイン) –

+0

@ovidiuDolha他のエラーは発生していません。これが原因です.404の応答があります。 –

答えて

2

あなたのappは、あなたが承諾したrouterをおそらく使用していません。

2つの溶液

1 - ルーターのアプリを使ってルートを定義していない

app.post('/request_method', function(req, res){ 
    console.log(req.body); 
    console.log(req.ip); 
}); 

2 - またはあなたのルーターを使用して

は、前に次の行を追加します。 router.post...あなたのアプリケーションにあなたのrouterで定義されているルートを使用するように指示します。

app.use('/', router); 
+0

私は非常にばかげた間違いを犯しました。私はこの特定のURL用のルータを作成していません。ありがとう、相棒。出来た。 –

+0

私のポストを回答として受け入れることができれば、どうぞお気軽に! – Dash

0

あなたはそのようなbodyParserを、含まれている必要があり

// parse application/x-www-form-urlencoded 
app.use(bodyParser.urlencoded({ extended: false })) 

または

// parse application/json 
app.use(bodyParser.json()) 
0

試してください:あなたのルートで

var submitForm = function(){ 
    var formData = new FormData($('#wizard-content')[0]); 
    if(formData){ 
     $.ajax({ 
      url : '/request_method', 
      type : 'POST', 
      data : formData, 
      contentType : false, 
      cache : false, 
      processData: false, 
      success : function(response){ 
       console.log(response); 
      }, 
      error : function(error){ 
       console.log(error); 
      } 
     }); 
    } 
} 

、ファイル入力

-1

を取得するためにreq.files[0]を使用して、私は非常に愚かなミスを犯してきた、私はルータを使用してURLを追加することを忘れています。

app.use('/', router); 
+1

誰かがすでにあなたに満足のいく答えを与えていた場合は、自分で回答を投稿する必要はありません。彼の答えを受け入れるだけで十分です。 :) – Chirag

関連する問題

 関連する問題