我正在尝试将一些数据从我的前端(react native)发送到我的中间件(spring boot),由于某种原因,这些值变成了 0 和 null。通过邮递员发送完全相同的对象工作正常。我试过用 " like 来包围参数的名称"quizId":2
,它也不起作用。我之前使用过下面这个确切的方法并取得了巨大的成功。我对这是如何发生的一无所知。非常感谢任何帮助.
端点:
void recordScore(@RequestBody Score score){
System.out.println(score);
serv.recordScore(score);
}
从 react native 发送时,上面 sysout 的控制台输出:
Score(quizId=0, staffId=0, totalScore=0.0, userQuizRecords=null, timeTaken=0, correctAns=0, takenDate=null)
使用邮递员时的控制台输出:
Score(quizId=3, staffId=405986, totalScore=30.0, userQuizRecords=[UserQuizRecord(id=0, staffId=405986, quizId=2, questionId=5, score=4, correctAns=true, takenDate=null), UserQuizRecord(id=0, staffId=405986, quizId=2, questionId=6, score=1, correctAns=false, takenDate=null), UserQuizRecord(id=0, staffId=405986, quizId=2, questionId=7, score=4, correctAns=true, takenDate=null), UserQuizRecord(id=0, staffId=405986, quizId=2, questionId=8, score=3, correctAns=false, takenDate=null)], timeTaken=400, correctAns=4, takenDate=null)
js:
let score = {
quizId: 2,
staffId: 405986,
totalScore: 30,
userQuizRecords: [{
staffId: 405986,
quizId: 2,
questionId: 5,
score: 4,
correctAns: true
},
{
staffId: 405986,
quizId: 2,
questionId: 6,
score: 1,
correctAns: false
},
{
staffId: 405986,
quizId: 2,
questionId: 7,
score: 4,
correctAns: true
},
{
staffId: 405986,
quizId: 2,
questionId: 8,
score: 3,
correctAns:false
}
],
timeTaken: 400,
correctAns: 4
}
拿来:
return fetch(apis.recordScore, {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
score:score
})
你能尝试在没有大括号的情况下对对象进行字符串化吗
body: JSON.stringify(score)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句