Я создаю аутентичную форму для своей веб-страницы с помощью Javascript и использую Vue JS на стороне клиента и NodeJS с ExpressJS на стороне сервера.
На стороне сервера я написал свой метод записи:
server.app.post("/login", function(req, res) {
console.log(req.body.username);
})
На стороне клиента у меня есть форма в моей ссылке html на экземпляр Vue:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="authent">
<p>Username :</p>
<input type="text" name="username" v-model="username" required>
<p>Pwd :</p>
<input type="password" name="password" v-model="password" required>
<button v-on:click="authent">Login</button>
</div>
<script src='/authent/vue.js'></script>
<script src='/authent/vue-resource.min.js'></script>
<script src="authent.js"></script>
</body>
</html>
window.onload = function () {
var authent = new Vue({
el: '#authent',
data: {
username: null,
password: null
},
methods: {
authent: function() {
try {
this.$http.post('/login', {"username": authent.username, "password": authent.password})
.then(function(response) {
console.log(response.body);
})
} catch (e) {
console.log(e);
}
}
}
})
}
Очевидно, я неправильно отправляю параметры в vue экземпляре, потому что на стороне сервера req.body
не определено.
РЕДАКТИРОВАТЬ Параметры отправляются, но я не знаю, как я могу получить к ним доступ в моем методе post на стороне сервера.