Skip to main content

Exercise API

練習相關API

Endpoints

# Endpoints


Submit answer

提交答案

Request (SubmitAnswerReq)

POST /app/exercise/submit
{
"userExerciseId": "36fd7887-3532-4bf3-9c94-99b74023036e",
"questionId": "5a386661-9789-450d-bb0c-220cdfdd6979",
"answers": [
1,
2,
3,
4,
5,
6,
8,
9,
10
]
}

Response (SubmitAnswerResp)

{
"success": true,
"message": "",
"data": [
{
"userExerciseId": "36fd7887-3532-4bf3-9c94-99b74023036e",
"currentQuestionId": "5a386661-9789-450d-bb0c-220cdfdd6979",
"nextChapterId": "36fd7887-3532-4bf3-9c94-99b74023036e",
"nextQuestionId": "556c0473-5df0-470f-8907-6287eac6eb86",
"nextQuestionSort": 3,
"userAnswerList": [
1,
2,
3,
4,
5,
6,
8,
9,
10
],
"correctAnswerList": [
1,
2,
3,
4,
5,
6,
8,
9,
10
],
"isCorrect": true,
"rightFeedback": "回答正確。",
"wrongFeedback": "回答錯誤。",
"nextPageType": "1"
}
]
}

Finished exercise

完成頁面

Request

GET /app/exercise/{user_exercise_id}/finished

Response (FinishedResp)

{
"success": true,
"message": "",
"data": [
{
"userExerciseId": "36fd7887-3532-4bf3-9c94-99b74023036e",
"questionTotal": 4,
"correctCount": 4,
"accuracy": "100.00",
"isExpired": false,
"isPass": true,
"hasReward": false,
"nextChapterId": "36fd7887-3532-4bf3-9c94-99b74023036e",
"buttonStyle": {
"buttonEnum": 3
}
}
]
}

Has new

是否有新練習

Request

GET /app/exercise/has-new

Response

{
"success": true,
"message": "",
"data": true
}


Resources

SubmitAnswerReq

properties
  • userExerciseId
    string
    required
    練習ID
  • questionId
    string
    required
    問題ID
  • answers
    array[int]
    required
    答案列表

SubmitAnswerResp

properties
  • userExerciseId
    string
    required
    練習ID
  • currentQuestionId
    string
    required
    當前問題ID
  • nextChapterId
    string
    required
    根據是否合格判斷下一章節ID
  • nextQuestionId
    string
    required
    下條問題ID
  • nextQuestionSort
    int
    required
    下條題序號
  • userAnswerList
    array[int]
    required
    用戶回答列表
  • correctAnswerList
    array[int]
    required
    正確答案列表
  • isCorrect
    boolean
    required
    是否正確
  • rightFeedback
    string
    required
    正確回答提示
  • wrongFeedback
    string
    required
    錯誤回答提示
  • nextPageType
    NextPageType
    required
    下一頁類型,對應詳見nextPageType

FinishedResp

properties
  • userExerciseId
    string
    required
    練習ID
  • questionTotal
    int
    required
    題目總數
  • correctCount
    int
    required
    正確回答數量
  • accuracy
    string
    required
    正確率
  • isExpired
    boolean
    required
    是否過期
  • isPass
    boolean
    required
    是否通過
  • buttonStyle
    object
    required
    buttonStyle
  • buttonEnum
    FinishedButtonEnum
    required
    buttonEnum

NextPageType

EnumDescription
1繼續練習
2完成頁面

ChapterButtonEnum

TypeDescription
1開始學習
2繼續學習
3重新學習
4重溫一次
5領取獎勵

FinishedButtonEnum

TypeDescription
1重溫一次
2下一章節
3完成