목록vue, spring boot/vue (3)
무소의 뿔처럼

Error : 415 Unsupported Media Type Vue 쪽에서 FormData로 board는 JSON 문자열, file은 파일로 보내고 있음Spring Boot에서는 @RequestPart를 써서 JSON과 파일을 각각 받으면 됨415 오류는 Content-Type이 multipart/form-data가 아닌 application/json으로 들어오거나, 파라미터 매핑 방식이 맞지 않을 때 발생 formData.append('board', JSON.stringify(boardObj)); if (file.value) { formData.append('file', file.value); }아래와 같이 수정formData.append('board', new Blob([JSON..
v-model로 input 값과 Vue 상태를 연결@submit.prevent로 페이지 새로고침 방지axios.post()로 서버로 데이터 전송import axios from 'axios';import { ref } from 'vue';const submitForm = async () => { ... } @CrossOrigin(origins = "http://localhost:5173") 혹은 configimport org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.C..
1. useRoute현재 **라우터 정보(경로, 파라미터, 쿼리 등)**를 읽을 때 사용읽기 전용예: URL에서 :boardNo 같은 파라미터, 쿼리 스트링 등을 얻고 싶을 때 사용import { useRoute } from 'vue-router'const route = useRoute()console.log(route.params.boardNo) // URL 파라미터 읽기console.log(route.query.page) // 쿼리스트링 읽기2. useRouter라우터의 동작(이동, 뒤로가기, 앞으로가기 등) 기능을 사용할 때프로그래밍 방식으로 페이지 이동할 때 주로 사용import { useRouter } from 'vue-router'const router = useRouter()rou..