1. 거래내역 조회하기 (검증)

유저 1 : 1~6번
유저 2 : 7~11번
유저 3 : 12~15번
물품을 가지고 있을 경우
거래내역 1번
<바이어 / 셀러>
유저1 / 유저2
1,2,3 / 7,8
거래내역 2번
<바이어 / 셀러>
유저3 / 유저2
15,14 / 9,10
거래내역 3번
<바이어 / 셀러>
유저3 / 유저1
12,13 / 4,5,6
일 경우 유저1번의 거래내역을 조회 할 때 거래내역 1, 3번에 해당합니다.
-> 거래내역에 해당하는 내 물품과 상대방의 물품을 구별해서 보내줘야합니다.
검증하기 코드
[
{
"barterId": 1,
"myItem": [
{
"itemId": 1,
"title": "1번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 2,
"title": "1번",
"itemImg": "하하하핫",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 3,
"title": "1번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
}
],
"barterList": [
{
"itemId": 7,
"title": "2번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 8,
"title": "2번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
}
]
},
{
"barterId": 3,
"myItem": [
{
"itemId": 4,
"title": "1번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 5,
"title": "1번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 6,
"title": "1번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
}
],
"barterList": [
{
"itemId": 12,
"title": "3번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
},
{
"itemId": 13,
"title": "3번",
"itemImg": "ㅁㄴㅇㄹ",
"date": "2022-04-27T18:58:24.429",
"status": "qwer"
}
]
}
]
2. 잘못된 거래내역 주소로 조회가 요청 (예외)


유저 2번는 BarterId가 1에만 해당되지만
-> "BarterId" : 2라는 정보로 요청 했을 경우
-> 상대방의 정보가 노출이되는 문제

유저의 전체 거래내역
-> 바이어이거나 셀러일 때 UserId가 해당하는 거래내역리스트를 조회하여
-> eachBarter에 하나씩 대입한 뒤, 요청들어온 barterId가 일치하지 않는다면 예외처리하였습니다.
3. 새로운 문제

거래완료이후 서로 매너를 평가하게 되는데
-> 하나의 거래에 대해서 같은 상대를 평가하는 주소를
-> 사용자가 악의적으로 중복 요청하게 되었을 때
-> 평가의 중복여부를 확인하지 못함 ( 방어 불가 )
유저가 평가를 했는지에 대한 검증조건을 추가해야 함
'일기 > 항해99' 카테고리의 다른 글
[항해99 6기] 실전프로젝트 1주차 느낀점 (0) | 2022.05.01 |
---|---|
[항해99 6기] 실전프로젝트 - 업무 방향성 업데이트 (0) | 2022.05.01 |
[항해99 6기] 실전프로젝트 - 코딩실수 (0) | 2022.04.29 |
[항해99 6기] 실전프로젝트 API설계하기 (0) | 2022.04.24 |
[항해99 6기] 실전프로젝트 시작 (0) | 2022.04.23 |