0
我正在構建一個基本用戶界面,用戶可以在其中輸入單詞和分數,並將其寫入本地JSON文件。這是一個情緒分析API。我有一切運行良好,當我進入一個路線,它成功地輸入單詞和分數到我的JSON文件。在Express App/NodeJS中返回HTML表單
問題是我在HTML中的輸入不起作用。每次我輸入一個單詞和一個分數,我的控制檯就會得到一個404。當我點擊我生成的url並將其放入瀏覽器時,它成功地將數據提交給JSON。所以我想知道我的輸入和我的jQuery發佈請求有什麼問題?
代碼:
$.getJSON("/all", function(data) {
var keys = Object.keys(data);
console.log(keys);
$("#submit").click(function() {
var word = $('#word').val();
var score = $('#score').val();
console.log(word, score);
var url1 = "add/";
var url = url1 + word + '/' + score;
$.ajax({
type: 'POST',
url: url,
success: function(data) {
console.log('succes');
console.log(JSON.stringify(data));
}
})
});
});
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>New Website</title>
<link rel="shortcut icon" href="data:image/x-icon;," type="image/x-icon">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<p>
Word: <input id="word" type="text" name="word" value="" placeholder="word">
<br/>
Score: <input id="score" type="number" name="score" value="" placeholder="score">
<br/>
<button id="submit" type="button" name="button">Submit</button>
</p>
<script type="text/javascript" src="script.js">
</script>
</body>
</html>
var fs = require('fs');
var data = fs.readFileSync('words.json');
var words = JSON.parse(data);
console.log('server is starting');
console.log(words);
var express = require('express');
var app = express();
var server = app.listen(3000, listening);
function listening(){
console.log('listening...')
}
app.use(express.static('Website'));
app.get('/add/:word/:score', addWord);
function addWord(request, response){
var data = request.params;
var word = data.word;
var score = Number(data.score);
words[word] = score;
var data = JSON.stringify(words,null,2);
fs.writeFile('words.json', data, finished);
function finished(err) {
console.log('all set.');
var reply = {
status: "Success",
word: word,
score: score
}
response.send(reply);
}
}
app.get('/all', sendAll);
function sendAll(request,response){
response.send(words);
}
發佈您的node.js代碼。 –
它現在在@JesseSchokker –
你爲什麼要將它寫入JSON文件?爲什麼不使用數據庫? –