簡體   English   中英

其余API的值為0或為null的值會響應本機/春季啟動

[英]values coming as 0 or null through rest API 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)

您確定要使用郵遞員發送完全相同的數據嗎?

這里可能出問題了:

body: JSON.stringify({
    score:score
})

在沒有包裝分數對象的情況下嘗試

body: JSON.stringify(score)

我從這里看不到您的Score定義,但我認為它沒有定義為具有一個名為score的成員屬性,並且所有字段都封裝在該子字段中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM