vue.js
axios String데이터 받기
신방동불주먹
2023. 6. 15. 14:56
반응형
const checkId = () =>{ //아이디 중복확인 //로그인이 안됐을텐데 header 가 필요한가
console.log(state.form.username);
axios.post('/auth/checkId', {username : state.form.username}, { headers: { 'Authorization': 'cos' } }).then((res) => {
window.alert(res.data);
}).catch(() => {
window.alert("이미 가입된 회원입니다.");
})
}
@PostMapping("/checkId")
public String checkId(@RequestBody String username) {
System.out.println("username: " + username);
User checkUser = userRepository.findByUsername(user);
System.out.println(checkUser);
보통 VO객체를 사용할 때 자동으로 VO에 JSON형식이 매핑된다.
그러나 Post 요청에서 String 형 하나만 보내는 경우, String 으로 받는다면
{username : yourimi}
와 같이 JSON형식이 딕셔너리 모습을 한 String형으로 파싱되어 들어온다.
-> Map<String, String>형으로 받은 후 get메서드로 데이터를 사용할 수 있다.
@PostMapping("/checkId")
public String checkId(@RequestBody Map<String, String> username) {
String user = username.get("username");
User checkUser = userRepository.findByUsername(user);
}
반응형