Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- AWS
- nodejs
- MongoDB
- 정렬
- MySQL
- OCR
- dfs
- class
- react
- 공룡게임
- typeORM
- mongoose
- cookie
- 자료구조
- jest
- game
- Nest.js
- Dinosaur
- flask
- Express
- 게임
- TypeScript
- Bull
- Queue
- JavaScript
- Python
- Sequelize
- nestjs
- GIT
Archives
- Today
- Total
포시코딩
[해결] axios GET 요청 파라미터 오류 본문
728x90
function getList(){
let session_user = JSON.parse(localStorage.getItem('session_user'));
axios.get('http://localhost:8080/list', {
_id: session_user._id,
}).then((result)=>{
console.log(result.data);
}).catch(()=>{
console.log('axios 통신실패')
})
}
app.get('/list', (req, res)=>{
let _id = ObjectId(req.body._id);
db.collection('group').find({ members: { $elemMatch: { _id: _id} } }).toArray().then((result)=>{
res.send(result);
})
})
_id: ObjectId("62cfd01aa89591c1c72027c0") 와 같은 형태의 데이터를
axios 로 GET 요청을 했는데
전달되는 과정에서 파라미터 값이 이상해지는거 같다.
중간중간 값들을 출력해보니 req.body 는 아예 비어있고
이상하게 req.body._id 는 전혀 다른 값이 나오고있었다. (이건 ObjectId() 를 적용시켜서 빈 값에 대해 변경된 값인거 같음)
/*
물론 둘다 POST 요청으로 변경하면 정상적으로 작동하지만
단순히 리스트를 뽑아오는 기능이기 때문에 GET 요청을 쓰는게 맞다고 생각한다.
GET 요청일때는 axios.get(주소, {파라미터}) 가 아닌건지..
*/
해결완료
위 예상이 맞았다.
axios GET 요청을 할 때는 파라미터를 아래와 같이 보낸다.
function getList(){
let session_user = JSON.parse(localStorage.getItem('session_user'));
axios.get('http://localhost:8080/list', {
params: {
_id: session_user._id
}
}).then((result)=>{
console.log(result.data);
}).catch(()=>{
console.log('axios 통신실패')
})
}
params 라고 명시를 해주며 중괄호 {} 로 묶어줘야한다.
그리고 데이터를 받는곳에선 request.query 를 통해 받아줘야한다.
* 혹시 body-parser 를 사용하면 body 로 받아지지 않을까 했지만 되지 않았음
app.use(express.urlencoded({extended: true}))
최종적으로 아래와 같이 nodejs 쪽에서 받아준 후 정상적으로 받으려던 group 리스트를 받을 수 있었다.
app.get('/list', (req, res)=>{
let _id = ObjectId(req.query._id);
db.collection('group').find({ members: { $elemMatch: { _id: _id} } }).toArray().then((result)=>{
res.send(result);
})
})
728x90
'React' 카테고리의 다른 글
Loading Spinner 만들기 (0) | 2023.03.03 |
---|---|
[object Object] 문제 해결 (0) | 2022.12.03 |
CRA (create-react-app) dotenv (0) | 2022.07.21 |
[진행중] useNavigate(), useEffect(), 무한 Uncaught 발생 관련 (0) | 2022.07.19 |
이미지 경로 사이에 값 넣기 (0) | 2022.07.05 |