2017-12-14 1 views
0

Google 스프레드 시트를 프로그래밍 방식으로 만드는 데 관심이 있습니다. 필자의 요구 사항 중 하나는 스프레드 시트의 열과 연결된 개발자 메타 데이터를 읽고 쓸 수 있어야한다는 것입니다.API를 사용하여 메타 데이터가있는 Google 스프레드 시트를 만들면 메타 데이터 레코드가 생성되지 않는 것 같습니다.

현재 스프레드 시트 수준이거나 시트의 특정 부분과 관련된 개발자 메타 데이터를 만드는 데 문제가 있습니다. 새 스프레드 시트를 생성하라는 요청을 보내면 예상대로 결과 스프레드 시트 개체를 반환하는 성공적인 응답을 받았습니다. 그러나이 요청에서 반환 된 개체에는 API 설명서와 같이 메타 데이터 개체가 포함되어 있지 않습니다. 메타 데이터 항목에 대한 명시 적 메타 데이터 ID를 설정 한 다음 검색하려고 시도해도 작동하지 않습니다 (아래 참조).

{ 
    "properties": { 
    "title": "test 6:19 with sheet metadata" 
    }, 
    "sheets": [ 
    { 
     "properties": { 
     "sheetId": 0, 
     "title": "Sheet1", 
     "index": 0, 
     "sheetType": "GRID", 
     "gridProperties": { 
      "rowCount": 2, 
      "columnCount": 2 
     } 
     }, 
     "data": [REMOVED_FOR_SPACE], 
    "developerMetadata": [ 
    { 
     "location": { 
     "spreadsheet": true, 
     "locationType": "SPREADSHEET" 
     }, 
     "metadataKey": "questionId", 
     "metadataValue": "12345", 
     "visibility": "DOCUMENT", 
     "metadataId": 12345 
    } 
    ] 
} 

: 여기

내가 요청과 함께 전송 된 JSON 바디 페이로드 (나는 내 ​​코드에서 그것을 분리뿐만 아니라, 가장 최근에 구글 API 탐색기를 사용하여 요청을 보내왔다) 이 요청은 200을 받고 위에서 언급 한 것처럼 개발자 메타 데이터가 누락 된 스프레드 시트 개체를 반환합니다. 설명 된대로 스프레드 시트가 만들어지고 UI를 통해 액세스 할 수 있습니다.

문서에도 불구하고 응답에 메타 데이터가 포함되지 않을 수도 있습니다. 그러나 위의 메타 데이터 ID에 대한 GET 요청을 할 때 다음 응답이 표시됩니다.

{ 
    "error": { 
    "code": 404, 
    "message": "No developer metadata with ID 12345.", 
    "status": "NOT_FOUND" 
    } 
} 

WUT 할 일이 있습니까?

답변

0

나는 똑같은 문제에 직면했고 나는 이것에 대해 완전히 포기했다. 나중에 스프레드 시트 아래 제공된 "batchUpdate"API를 사용해 보았습니다. "요청"아래의 "종류"필드 중 하나는 값 - createDeveloperMetadata입니다. (https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request) 스프레드 시트를 생성하는 동안 제공하려고했던 구조와 동일한 CreateDeveloperMetadataRequest 객체가 필요합니다. (https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request#CreateDeveloperMetadataRequest) 임의의 정수를 메타 데이터 ID로 실행하면 200 응답이 나타납니다. 또한 개발자 Metadata에서 GET을 수행하면 올바른 응답을 반환했습니다.

희망이 도움이됩니다.

+0

의견을 보내 주셔서 감사합니다. 결국, 나는 다른 방식으로 일을 끝내고 Sheet 메타 데이터를 완전히 사용하는 것을 피했습니다. 앞으로 메타 데이터를 사용해야 할 경우 매우 유용 할 것입니다. –

관련 문제