안녕하십니까. 바쁘신 와중에 이슈 해결을 위해 힘써주셔서 항상 감사드립니다.
친구 목록을 불러오는 불러오기 위해 스프링부트에서 프로그래밍 중입니다.
현재는 애플리케이션 팀에 등록되고, 동의를 한 팀원들의 목록을 받아오는 단계입니다.
API 테스트를 위해 포스트맨을 활용하여 테스트한 결과 이상없이 카카오 서버에서 데이터를 불러왔지만
스프링부트로 API를 호출하니 403을 반환 하였습니다.
요청주소와 엑세스토큰, 권한에는 문제 없음을 확인하였습니다.
해당 이슈와 관련해서 해답을 알려주시면 감사하겠습니다.
<자바 코드 메서드>
public String requestFriendList(String accessToken, int friendNum) throws IOException{
String returnMessageLog = "친구목록 불러오기 성공";
String inPutAccessToken = accessToken; //=> 엑세스 토큰
URL url = null;
HttpURLConnection conn = null;
try {
url = new URL(RquestFreindListURL); //=> 요청주소를 담고 있는 변수
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
log.info("...accessTokem : " + inPutAccessToken);
conn.setRequestProperty("Authorization", "Bearer " + inPutAccessToken);
conn.setDoOutput(true);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));
StringBuilder sb = new StringBuilder();
sb.append("&limit=" + friendNum);
bw.write(sb.toString());
bw.flush();
bw.close();
int responseCode = conn.getResponseCode();
log.info("...responseCode : " + responseCode);
if(responseCode == 403) {
returnMessageLog = "친구목록 불러오기 실패....";
}
} catch(IOException e) {
returnMessageLog = "친구목록 불러오기 실패....";
log.info("Error : " + e.toString());
} finally {
}
return returnMessageLog;
}
<포스트맨 결과 > => 민감한 정보는 삭제 혹은 X로 지웠습니다.
{
"elements": [
{
"profile_nickname": "김xx",
"profile_thumbnail_image": "",
"id": 1,
"uuid": "JRIlESIVLC8WLx1X",
"favorite": false
},
{
"profile_nickname": "XX윤",
"profile_thumbnail_image": "https://p.kg",
"id": 1736,
"uuid": "JRYhFHygRKBpU",
"favorite": false
},
{
"profile_nickname": "박XX",
"profile_thumbnail_image": "https://p.g",
"id": 212988,
"uuid": "JRIkkHSoTKhhJ",
"favorite": false
},
{
"profile_nickname": "유XX",
"profile_thumbnail_image": "https://p./g",
"id": 1244,
"uuid": "J2E",
"favorite": false
}
],
"total_count": 4,
"after_url": null,
"favorite_count": 0
}