서비스 계정을 사용하여 Google Sheet API 요청을 구현하고 싶습니다. 이 코드 생성 :TokenResponseException : 401 Unconthorized
HttpTransport httpTransport = new NetHttpTransport();
JacksonFactory JSON_FACTORY = new JacksonFactory();
ClassLoader classLoader = this.getClass().getClassLoader();
java.io.File path = new java.io.File(classLoader.getResource("i-6dc0c917ee63.p12").getFile());
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId("[email protected]")
.setServiceAccountPrivateKeyFromP12File(path)
.setServiceAccountScopes(Arrays.asList(SheetsScopes.SPREADSHEETS))
.setServiceAccountUser("[email protected]")
.build();
Sheets service = new Sheets.Builder(httpTransport, JSON_FACTORY, null)
.setApplicationName("project")
.setHttpRequestInitializer(credential).build();
Sheets.Spreadsheets spreadsheets = service.spreadsheets();
Spreadsheet includeGridData = spreadsheets.get(spreadsheetId).execute();
을하지만이 오류 얻을 :이 방법 .execute();
에 401 권한
:
com.google.api.client.auth.oauth2.TokenResponseException을 이 문제를 어떻게 해결할 수 있는지 알고 있습니까?
각 호출 전에 토큰을 새로 고치기 위해 테스트했지만 그 결과는 같습니다. –
[SO 게시물] (https://stackoverflow.com/questions/39201216/exception-in-thread-main-com-google-api-client-auth-oauth2-tokenresponseexcept/39225165)에 제공된 해결책을 확인하고 싶을 수 있습니다. # 39225165) 여기서 토큰이 유효하지 않은 경우 수행 할 단계가 있습니다. – Teyam