2016-01-03 8 views
5

Ich habe andere Fragen mit dem gleichen Fehler gesehen, aber keine der Antworten scheint zu funktionieren.Zeigt Fehler "Kann nicht senden", wenn ich versuche, das HTML-Formular zu senden

<!DOCTYPE html> 
<html> 
<body> 

<form action="http://127.0.0.1:8080/del" method="post"> 
    First name: <input type="text" name="fname"><br> 
    Last name: <input type="text" name="lname"><br> 
    <input type="submit" value="Submit"> 
</form> 

<p>Click on the submit button, and the input will be sent to a page on the server called "http://127.0.0.1:8080/del".</p> 

</body> 
</html> 

server.js

var express=require('express'); 
var body_parser=require('body-parser'); 
var request = require('request').defaults({json:true}); 
var app=express(); 
var del=require('./del'); 
app.post('./del',del.test); 
var server = app.listen(8080,function(){ 
    var host="127.0.0.1"; 
    var port="8080"; 
    console.log("App is listening at http://%s:%s\n",host,port); 
}); 

del.js

module.exports={ 
    test: function(){ 
     console.log("Hello world."); 
    } 
}; 

Jedes Mal, wenn ich das Formular aus, es zeigt

Kann nicht POST/del

Antwort

1

In Ihrem server.js Änderung dieser Zeile:

app.post('./del',del.test); 

dazu:

app.post('/del',del.test); 

dann Sie richtig Router.

Und Ihre del.js Änderung dieser:

module.exports={ 
    test: function(req, res){ 
     console.log("Hello world."); 
     res.status(200).end(); 
    } 
}; 

weil Router-Funktion Antwort zurückgeben sollte.

+1

Danke !! hat es funktioniert. :) – Abhishek

+0

Ich bin froh, dass ich dir helfen konnte. Wenn meine Antwort richtig ist, akzeptiere sie bitte. –

+0

Nicht genug Ruf, um Ihre Antwort zu wählen: '( Entschuldigung! – Abhishek