일정 관리 - 일정 생성 서버 API 연동

박웅비

2021.04.15읽음 3113

method.setRequestBody("{\"ical\": \"BEGIN:VCALENDAR\r\n" +
"VERSION:2.0\r\n" +
"PRODID:Naver Calendar\r\n" +
"CALSCALE:GREGORIAN\r\n" +
"BEGIN:VTIMEZONE\r\n" +
"TZID:Asia/Seoul\r\n" +
"BEGIN:STANDARD\r\n" +
"DTSTART:19700101T000000\r\n" +
"TZNAME:GMT+09:00\r\n" +
"TZOFFSETFROM:+0900\r\n" +
"TZOFFSETTO:+0900\r\n" +
"END:STANDARD\r\n" +
"END:VTIMEZONE\r\n" +
"BEGIN:VEVENT\r\n" +
"SEQUENCE:0\r\n" +
"CLASS:PUBLIC\r\n" +
"TRANSP:OPAQUE\r\n" +
"UID:6E12DA93-8B43-4576-9A8A-31B4BDC8BDCF_xell_1409882048@example.com\r\n" +
"DTSTART;TZID=Asia/Seoul:20140905T110000\r\n" +
"DTEND;TZID=Asia/Seoul:20140905T120000\r\n" +
"SUMMARY:매주반복 샘플\r\n" +
"DESCRIPTION:상세 설명영역\r\n" +
"LOCATION:여기에서\r\n" +
"RRULE:FREQ=WEEKLY;BYDAY=FR;INTERVAL=1;UNTIL=20141030T120000\r\n" +
"ORGANIZER;CN=홍길동:mailto:gildong.hong@example.com\r\n" +
"ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;CN=참석자:mailto:user01@example.com\r\n" +
"CREATED:20140905T015408Z\r\n" +
"LAST-MODIFIED:20140905T015408Z\r\n" +
"DTSTAMP:20140905T015409Z\r\n" +
"END:VEVENT\r\n" +
"END:VCALENDAR\"}")
위 처럼 서버 API 연동에 나와있는 sample 데이터로 요청 시 
response={"requestMethod":"POST","responseStatus":"0","elapseTime":"27","requestTime":"2021-04-15 17:36:38","requestMapping":"/v1/{accountId}/calendars/{calendarId}/events","response":"IllegalArgumentException","requestUid":"deoakcwv","requestContentType":"application/json; charset=UTF-8","requestParamMap":"{ical=BEGIN:VCALENDARVERSION:2.0PRODID:Naver CalendarCALSCALE:GREGORIANBEGIN:VTIMEZONETZID:Asia/SeoulBEGIN:STANDARDDTSTART:19700101T000000TZNAME:GMT+09:00TZOFFSETFROM:+0900TZOFFSETTO:+0900END:STANDARDEND:VTIMEZONEBEGIN:VEVENTSEQUENCE:0CLASS:PUBLICTRANSP:OPAQUEUID:6E12DA93-8B43-4576-9A8A-31B4BDC8BDCF_xell_1409882048@example.comDTSTART;TZID=Asia/Seoul:20140905T110000DTEND;TZID=Asia/Seoul:20140905T120000SUMMARY:매주반복 샘플DESCRIPTION:상세 설명영역LOCATION:여기에서RRULE:FREQ=WEEKLY;BYDAY=FR;INTERVAL=1;UNTIL=20141030T120000ORGANIZER;CN=홍길동:mailto:gildong.hong@example.comATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;CN=참석자:mailto:user01@example.comCREATED:20140905T015408ZLAST-MODIFIED:20140905T015408ZDTSTAMP:20140905T015409ZEND:VEVENTEND:VCALENDAR}","domain":"calendar","code":"SERVICE_UNAVAILABLE","message":"Service fail"}

위처럼 에러가 발생하는데 어느 부분이 잘못됬는지 알 수 있을까요 !?

댓글1

  • 업데이트 된 답글입니다.

    branches

    원인이 여러가지가 있을것 같습니다. 우선 리퀘스트 인코딩이 utf-8 인지 확인해 보시구요
    그다음 캐리지리턴문자를 \r\n 이 아닌 \n 으로 해보세요

    2021.04.15

    0
이전 글refresh token을 이용한 access token 재발급
다음 글Drive API 사용 문의 입니다.
목록

궁금한 점을 해결하지 못하셨나요?
지금 바로 NAVER WORKS 사용자들에게 물어보세요!