Skip to content

Request Mapping 에서는 기본자료형을 사용 할 수 없음 #62

Description

@SeokHwanJeongKR

✅ 리액트 요청부 코드
const deleteKanbanBoardCard = async (cardId) => {
const response = await apiClient.delete(/api/kanbanboardcard/delete, {
data: { cardId }
})
return response;
}

🔴 백엔드 컨트롤러 코드 (잘못된 코드)
@DeleteMapping("/kanbanboardcard/delete")
public ResponseEntity deleteKanbanBoardCard(@RequestBody Long cardId) {

    Long cardId = request.getCardId();

    log.info("😀cardId = {}", cardId);

    KanbanBoardMessageResponse result = kanbanBoardCardService.deleteBoardCard(cardId);

    return ResponseEntity.ok(result);

}

✅ 백엔드 컨트롤러 코드 (올바른 코드)
@DeleteMapping("/kanbanboardcard/delete")
public ResponseEntity deleteKanbanBoardCard(@RequestBody KanbanBoardCardDeleteRequest request) {

    Long cardId = request.getCardId();

    log.info("😀cardId = {}", cardId);

    KanbanBoardMessageResponse result = kanbanBoardCardService.deleteBoardCard(cardId);

    return ResponseEntity.ok(result);

}

📌 문제점 정리
백엔드에서 @RequestBody Long cardId는 사용할 수 없음 { " RequestBody에서 기본 자료형(int, long, boolean) 사용 불가능
" }
→ DTO(DeleteCardRequest)를 사용해야 함

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Document

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions