구글 앱스크립트에서 다음과 같은 에러가 계속 발생하면서 정상적으로 작동이 안되었다.
API 호출 중 오류 발생: UrlFetchApp.fetch을(를) 호출할 수 없습니다. 다음 권한이 필요합니다.
https://www.googleapis.com/auth/script.external_request
권한 문제로 "UrlFetchApp.fetch"를 호출 할 수 없다는 말을 그대로 해석하여 ChatGPT와의 API 쪽 문제인 줄 알고, 그 쪽으로만 주구장창 고민을 하고 있었다.
그런데, 알고 보니 이게 onEdit 사용 시 권한 에러가 발생하여 실행이 안 된 것이라고 한다.
그걸 이렇게 표현해 놓았다.
onEdit()와 같은 심플 트리거(simple trigger)는 승인이 필요한 서비스에는 엑세스 할 수 없어
외부에 호출하는 api는 사용할 수 없다.
해결 방법은 외부 권한이 필요한 함수 호출 시에는 단순 트리거(simple trigger) 대신
설치 가능한 트리거(Installable trigger)를 사용하면 된다.
너무나 간단한 해결 방법.. "설치 가능한 트리거(Installable trigger)"를 사용하면 된다고 한다.
https://developers.google.com/apps-script/guides/triggers/installable?hl=ko
뭔 말인지 모르겠다.
"설치 가능한 트리거"가 뭔가 싶어서 참고 자료 페이지도 읽어 봤지만, 뭔 말인지를 모르겠어서..
여기 저기 검색해 보고, ChatGPT한테도 물어 봤지만, 감이 잡히질 않았다.
ChatGPT API 문제인가 싶어서 헤메고.. "설치 가능한 트리거"라는 특별한 무언가가 찾기 위해 헤메고.
그러다, 결국 알게 되었다. 함수 이름을 "onEdit()"에서 "onEdit_modified(임의로)"로 바꾸면 된다는 것을..
함수 이름만 바꾸고, 트리거에 추가하고 돌렸더니 너무나도 쉽게 해결이 되었다.
반응형
'기타' 카테고리의 다른 글
클라우드 서비스 비교: AWS와 GCP의 차이점과 강점 분석 (0) | 2024.02.01 |
---|---|
GPT for Sheets and Docs 비용 걱정 끝! 구글시트 내 무료 GPT 활용 전략 소개 (1) | 2024.01.31 |
ChatGPT와 Bard 장단점 비교 (0) | 2024.01.27 |
자녀와 소통하는 방법: 더 가깝고 더 효과적으로 (0) | 2024.01.20 |
온라인 코호트 학습: 협력적 학습의 미래 (0) | 2023.11.26 |