我在这个链接中遇到了一个以前被问过的新问题。但这与我的问题无关。
我实现的是一个非常简单的 API,使用nodejs
,express-framework
和mongoose
. 问题在于 fetch API。我想提交一些 ID 并将其发布到服务器。在服务器端,我根据用户输入的 ID 将其重定向到正确的 URL。每当我测试这部分时,前端都会出现此错误并指向return response.json()
行。
SyntaxError:输入意外结束
这是我的代码:
前端:
function submitCode(){
var nationalCode = document.getElementById('nationalCode').value
var data = {
nationalCode: nationalCode,
creationDate: new Date().toLocaleDateString()
}
fetch('/submit', {
method: 'POST',
redirect:'manual',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
},
body: JSON.stringify(data)
},
).then(response => {
return response.json()
}).then(jsonData => {
console.log('success:', jsonData)
history.pushState(null, null, "/lashkhor")
}).catch(e => {
console.log('error:', e)
return e
})
}
后端:
app.post('/submit', (req, res) => {
var nationalCode = req.body.nationalCode
var creationDate = req.body.creationDate
query = {'nationalCode': nationalCode}
nationalCodeModel.find(query, (err, success) => {
if (err) {
console.log('error:', err)
}
else if (success.length == 0){
nationalCodeModel.create({
nationalCode: nationalCode,
creationDate: creationDate
})
console.log('salam khoshgele daei!')
res.redirect('/khoshgeledaei')
}
else if (success.length > 0) {
console.log('lashkhor detected')
res.redirect('/lashkhor')
}
})
})
app.get('/lashkhor', (req, res) => {
console.log('here')
res.send('salam')
})
我找不到任何提示来解决它。如果有人可以帮助我,我将不胜感激。
蝴蝶不菲
相关分类