문제

지금이 코드를 사용하여 Google 드라이브에 파일을 업로드하고 있습니다. https://stackoverflow.com/a/11657773/1715263 텍스트 파일로 잘 작동합니다.

동일한 코드를 사용하여 Google 에서이 정보를 사용하여 폴더를 만들려고합니다. https://developers.google.com/drive/folder

Content-Type : Application / JSON은 헤더에 들어가고 "Application / Vnd.Google-Apps.Folder"가 몸의 Mimetype이어야합니다 (?), 제가하는 일이 제가하는 일이어야합니다.이제 다음과 같은 코드 :

function createFolder() 
{
    var access_token = googleAuth.getAccessToken();

    var json = JSON.stringify({
        mimeType: 'application/vnd.google-apps.folder',
        title: 'Folder',
    });

    var body =  "Content-Type: application/json" + "\r\n" +
                "Content-Length: " + json.length + "\r\n" + "\r\n" +
                json;

    gapi.client.request({

        'path': '/upload/drive/v2/files/',
        'method': 'POST',
        'params': {'uploadType': 'multipart'},
        'headers': {
            'Content-Type': 'application/json',
            'Authorization': 'Bearer ' + access_token,             
        },
        'body': body
    }).execute(function(file) { 
        document.getElementById("info").innerHTML = "Created folder: " + file;
    }); 
.

그러나 "Untitled"라는 파일 만 만들고 폴더가 없으며 열 수 없습니다.

"헤더"섹션에서 "Content-Type"을 "Application / VND.Google-Apps.Folder"로 변경하고 "본문"부분을 제거하면 "Untitled"라는 폴더를 만듭니다. 특정 제목이있는 폴더를 만드는 방법은 무엇입니까?

도움이 되었습니까?

해결책

마침내이 코드를 이끌었던 Claudios 코드를 Googling으로 일하고 있습니다. https://stackoverflow.com/a/11361392/1715263

변경된 중요한 것은 '/ Upload / drive / v2 / files / "대신'/ drive / v2 / files /"입니다. 나는 방금 'gapi.client.load'-function, 헤더 정보를 추가하고 bodys mimetype을 변경했습니다.

이 코드가 있습니다.

function createFolder() {

   var access_token = googleAuth.getAccessToken();

   var request = gapi.client.request({
       'path': '/drive/v2/files/',
       'method': 'POST',
       'headers': {
           'Content-Type': 'application/json',
           'Authorization': 'Bearer ' + access_token,             
       },
       'body':{
           "title" : "Folder",
           "mimeType" : "application/vnd.google-apps.folder",
       }
   });

   request.execute(function(resp) { 
       console.log(resp); 
       document.getElementById("info").innerHTML = "Created folder: " + resp.title;
   });
}
.

다른 팁

다음 코드를 사용해보십시오.

function createFolder(folderName) {
  var body = {
    'title': folderName,
    'mimeType': "application/vnd.google-apps.folder"
  };

  var request = gapi.client.drive.files.insert({
    'resource': body
  });

  request.execute(function(resp) {
    console.log('Folder ID: ' + resp.id);
  });
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top