【发布时间】:2017-12-15 08:27:45
【问题描述】:
我尝试创建注册页面并将数据发送到 mysql db。我刚刚写了这个代码.. 服务器.js
var mysql = require('mysql');
var http = require('http');
var port = process.env.PORT || 1337;
var con = mysql.createConnection({
host: "localhost",
user: "*****",
password: "*******",
database: "node"
});
con.connect(function (error) {
app.post('/', function (req, res) {
var user = req.body;
var query = connection.query('INSERT INTO signup(FirstName, LastName, Email,Password, PasswordConfirm) SET ?', user, function (err, result) {
});
res.end('Success');
});
});
app.js 这是我的组件。
class Signup extends React.Component {
constructor() {
super();
this.state = { user: {} };
this.onSubmit = this.handleSubmit.bind(this);
}
handleSubmit(e) {
e.preventDefault();
var self = this;
fetch('/', {
method: 'POST',
data: {
firstname: self.refs.FirstName,
lastname: self.refs.LasttName,
email: self.refs.Email,
password: self.refs.Password,
passwordconfirm: self.refs.PasswordConfirm
}
})
.then(function(response) {
return response.json()
}).then(function(body) {
console.log(body);
});
}
render(){
return(
<div>
<form id="signup" onSubmit={this.onSubmit}>
<input type="text" id="firstName" placeholder="FirstName" ref="firstname"/>
<input type="text" id="lastName" placeholder="LastName" ref="lastname"/>
<input type="email" id="email" placeholder="Email" ref="email"/>
<input type="password" id="password" placeholder="Password" ref="password" />
<input type="password" id="confirm" placeholder="PasswordConfirm"ref="passwordconfirm" />
<input type="submit" />
</form>
</div>
)
}}
我只是尝试将数据发送到 mysql db。 我收到此错误消息 -->Uncaught (in promise) SyntaxError: Unexpected token
为什么?怎么了?
【问题讨论】:
-
您应该真正看到实际的 JSON,但我的猜测是服务器端出了点问题,服务器响应 HTML 错误页面(因此以
<开头)而不是 JSON。因此,您还需要检查服务器日志文件。
标签: javascript mysql database reactjs