1. 에러 메시지Postman을 활용해 OAuth2.0 카카오 토큰을 발급 받으려고 시도했는데 계속 아래와 같은 에러 메시지가 떴다.Error: invalid_client, Description: Not exist client_id [null]분명히 client_id에 REST API 키를 잘 넣었는데 계속해서 같은 에러가 떴다. 2. 문제점Client Authentication이 Send as Basic Auth header로 되어 있는 것이 문제였다. 3. 해결방법구글링을 해보니 특정 버전부터는 Client Authentication을 Send client credentials in body로 설정해야 한다고 한다.이전 버전에는 Send as Basic Auth header로 해도 요청이 잘 갔다..
전체 글
혜+개발+아기 혹은 혜+발아기. 응애 웹 개발자프로필 사진 업로드 시 @RequestPart 어노테이션을 사용해서 user_id와 file을 파라미터로 설정했다.그런데 프론트에서 요청을 하든 포스트맨으로 요청을 하든 form-data로 요청을 잘 했는데도415 Media type error가 자꾸만 떠서 어제 몇 시간 동안 삽질을 했다. 1. 에러 코드{ "timestamp": "2024-11-25T18:12:39.762+00:00", "status": 415, "error": "Unsupported Media Type", "path": "/api/profile"} 2. 기존 코드@RestController@RequiredArgsConstructor@RequestMapping("/api/profile")public class ..
공공데이터포털의 사업자등록 상태조회 API를 활용하였다.그런데 아래와 같은 에러가 떴다. 1. 에러 로그 및 문제점Uncaught (in promise) Error: AxiosError: Request failed with status code 500 at businessman_status (sign_up_api.js:67:1) at async validateRegNumber (Sign_up_page_company.jsx:170:1) https://api.odcloud.kr/api/nts-businessman/v1/status?serviceKey=비밀키{ "message": "Method Not Allowed"}Method를 허용할 수 없다는 500 에러가 떴다. sign_up_api...
1. 에러 로그 및 문제 해결처음에는 인증번호에 옳은 값을 입력했는데도 일치하지 않는다는 문구가 떴다.그래서 console.log를 이용해서 값을 추적할 수 있게 해두고,인증번호 input창에 123이라는 값을 입력했는데 콘솔창에는 123이 아닌 12가 떴다. 2. 기존 코드const [authNumber, setAuthNumber] = useState("");const handleAuthNumberChange = (e) => { setAuthNumber(e.target.value); validateAuthNumber(authNumber);};const validateAuthNumber = async (authNumber) => { const isValid = await check_si..
1. 에러 로그 및 문제점Mail server connection failed. Failed messages: org.eclipse.angus.mail.util.MailConnectException: Couldn't connect to host, port: stmp.gmail.com, 587; timeout -1; nested exception is: java.net.UnknownHostException: stmp.gmail.com구글 이메일 전송 기능 설정 후, swagger를 이용하여 실행해보았을 때 위와 같은 에러 로그가 떴다.# google mailspring.mail.host=stmp.gmail.comspring.mail.port=587spring.mail.username=ENC(암호화된 구글..
1. 구글 계정 설정1. 구글 계정 관리 - 보안2. 2단계 인증 설정 3. https://myaccount.google.com/apppasswords?pli=1&rapt=AEjHL4P8w5kYAfKVM2_3oI0BmvNBr5y26BQ9BdqvsygxCX-T8SqtdRqtzDeNu-wirFxYI1QISHwwPq4IFV-WS7-3UBpGn7L8iKu3oiFQkVEVxcYHufUNaoc 링크로 접속해 앱 비밀번호 생성4. 16자리 앱 비밀번호 확인 및 복사 2. 구글 메일 설정1. Gmail - 설정 - 전달 및 POP/IMAP 탭 클릭2. 모든 메일에 POP 사용하기 체크3. IMAP 사용 체크4. 나머지는 하고 싶은 대로 커스터마이징5. 스크롤 내려 변경 사항 저장 버튼 클릭 3. 의존성 + pro..
사진을 업로드 한 후, 사용자가 업로드한 사진이 화면에 바로 반영되는 기능을 구현해보았다.아래는 파일 업로드 컴포넌트 코드이다.tailwind css와 일반 css가 혼재되어 있어서 깔끔하지 않음 주의import React, { useState } from "react";const Profile_picture = ({ onchange }) => { const [imagePreview, setImagePreview] = useState(null); const handleImageChange = (event) => { const file = event.target.files[0]; if (file) { const reader = new FileReader(); reader.o..
1. 에러 로그 및 문제점org.springframework.beans.factory.UnsatisfiedDependencyException : Error creating bean with name 'customSecurityConfig' defined in file[C:\SEO\BE\build\classes\java\main\com\omd\dashboard\common\config\CustomSecurityConfig.class] : Unsatisfied dependency expressed through constructor parameter 1 : Error creating bean with name 'JWTTokenProvider' defined in file [C:\SEO\BE\build\cla..
1. 문제점application.properties에 있는 값을 사용하기 위해 @Value 어노테이션을 적용했다.그런데 이미지와 같이 Cannot find method 'value'라는 문구가 떴다. 2. 원인첫 번째@Value 어노테이션 import를 org.springframework.beans.factory.annotation.Value로 해야 하는데lombok.Value로 한 것이 원인이었다.그런데 이 import 역시 안 됐다. 두 번째annotation processor 사용 설정이 안 되어 있었다. 3. 해결방법Setting - Annotaion Processors - Enable annotaion processing에 체크 - OK 이후 org.springframework.beans.f..