Expressを使用して、node.jsでWebサイトのフロントエンドとバックエンドを作成しています。
ここで、Java を使用している別のフロントエンドを追加したいと考えています。フォームに入力してユーザーを追加できるアプリが必要です。btn_create_user_pressed で、node.js で自分のサーバーを呼び出し、次のようなフィードバックでサーバーを作成したいと考えています: User created-User already exist-etc.
POST で localhost:3000/adduser を呼び出すことができると思っていましたが、私のルートでは、作成が成功した場合はリダイレクトされます
ルートやビューを変更して、リダイレクトが addUser 操作に依存しないようにし、他のフロントエンド側から呼び出すことができるようにする方法。
ここに私の newuser.jade があります
extends layout
block content
h1= title
form#formAddUser(name="adduser",mehod="post",action="/adduser")
input#inputUserName(type="text", placeholder="Votre Nom", name="username")
input#inputUserEmail(type="text", placeholder="Votre Email", name="useremail")
button#btnSubmit(type="submit") Envoyer
それは私のルート adduser を呼び出します:
/* POST to Add User Service */
router.post('/adduser', function(req, res) {
// Set our internal DB variable
var db = req.db;
// Get our form values. These rely on the "name" attributes
var userName = req.body.username;
var userEmail = req.body.useremail;
// Set our collection
var collection = db.get('usercollection');
// Submit to the DB
collection.insert({
"username" : userName,
"email" : userEmail
}, function (err, doc) {
if (err) {
// If it failed, return error
res.send("There was a problem adding the information to the database.");
}
else {
// And forward to success page
res.redirect("userlist");
}
});
});