axios.post 에 form 데이터를 넣는 방법
axios.post 는 그냥 사용하면 form 데이터 형식을 사용할 수 없다. 그래서 new FormData()
를 이용해서 form 형식으로 데이터를 보내야 한다.
기존에 데이터에 post 형식으로 데이터를 보내는 방법
axios.post(`http://localhost:8000/api/auth`, {
headers: {
'Content-type': 'application/x-www-form-urlencoded',
},
id : 'hong',
pwd: '12345'
}).then( response => {
console.log('response', JSON.stringify(response, null, 2))
}).catch( error => {
console.log('failed', error)
})
form 형식으로 데이터를 전송하고 제어하기 위해서 는 아래와 같이 사용을 한다.
let form = new FormData()
form.append('id', this.userID)
form.append('pwd',this.userPass)
axios.post(`http://localhost:8000/api/auth`, form)
.then( response => {
console.log('response : ', JSON.stringify(response, null, 2))
}).catch( error => {
console.log('failed', error)
})
axios.post 방식은 심플하지만 기본 설정을 잘 해줘야 한다. 암호화 기능을 사용하려면 defaults
세팅에서 헤매는 일이 많을 수 있다.
예를 들어 headers
에 토큰을 저장해서 암호화 접근 방식을 사용한다는 점 또한 대표적인 기능 중에 하나고, 토큰에 의해서 접속할 수 있은 권한을 제어 하는 기능 또한 같은 맹락이라고 할수 있다
querystring
을 사용해서 로그인 하는 방법을 추천한다. 이 방법은 new FomData()
로 하는 방식보다 훨씬 간단하다. 줄을 줄일수도 있다
Axios.post(
`/user/login`,
qs.stringify({ id, pw })
).then(data => {
commit("LOGIN", data);
});
반응형
'개발' 카테고리의 다른 글
centos7,8 SSL(HTTPS) 무료인증서 설치 (0) | 2022.10.11 |
---|---|
intellij경고 java raw type 과 매개변수 타입 (0) | 2022.09.28 |
자신감, 생산성 및 소득을 높이는 23 가지 스마트 방법 (0) | 2018.01.31 |
윈도우 live writer 설치하기 (0) | 2016.11.29 |
일곱가지 모델 (0) | 2016.11.19 |