2016-09-07 5 views
0

Я пытаюсь сделать подборщик диска Google, который позволяет загружать новые локальные файлы на Google Диск. Сборщик работает, и он показывает мне мои файлы в Google Диске, но есть только кнопка выбора и кнопка «загрузить» отсутствует. Я добавил представление google.picker.DocsUploadView(), но все же не кнопка.Google picker upload

Там это моя createPicker функция:

function createPicker() { 
    if (pickerApiLoaded && oauthToken) { 
    var view = new google.picker.View(google.picker.ViewId.DOCS); 
    view.setMimeTypes("image/png,image/jpeg,image/jpg"); 
    var picker = new google.picker.PickerBuilder() 
     .enableFeature(google.picker.Feature.NAV_HIDDEN) 
     .enableFeature(google.picker.Feature.MULTISELECT_ENABLED) 
     .setAppId(appId) 
     .setOAuthToken(oauthToken) 
     .addView(view) 
     .addView(new google.picker.DocsUploadView()) 
     .setDeveloperKey(developerKey) 
     .setCallback(pickerCallback) 
     .build(); 
    picker.setVisible(true); 
    } 
} 

Любые мысли?

ответ

0

Вы будете использовать DocsUploadView.

Используйте это в коде createPicker:

function createPicker() { 
    // Create a view to search images. 
    var view = new google.picker.View(google.picker.ViewId.DOCS); 
    view.setMimeTypes('image/png,image/jpeg'); 

    // Use DocsUploadView to upload documents to Google Drive. 
    var uploadView = new google.picker.DocsUploadView(); 

    var picker = new google.picker.PickerBuilder(). 
     addView(view). 
     addView(uploadView). 
     setAppId(appId). 
     setOAuthToken(oauthToken). 
     setCallback(pickerCallback). 
     build(); 
    picker.setVisible(true); 
} 

// A simple callback implementation. 
function pickerCallback(data) { 
    if (data.action == google.picker.Action.PICKED) { 
     var fileId = data.docs[0].id; 
     alert('The user selected: ' + fileId); 
     createPicker(); 
    } 
} 

Это будет выглядеть следующим образом. enter image description here

0

0 Где остальная часть кода?

Самый простой способ для загрузки файла - сделать простой запрос на загрузку. Этот вариант является хорошим выбором, когда:

Файл достаточно мал, чтобы загружать его целиком, если соединение не удается. Нет метаданных для отправки. Это может быть правдой, если вы планируете отправлять метаданные для этого ресурса в отдельный запрос или если метаданные не поддерживаются или недоступны. Чтобы использовать простую загрузку, сделайте запрос POST или PUT для URI метода/загрузки и добавьте параметр запроса uploadType = media. Например:

POST https://www.googleapis.com/upload/drive/v3/files?uploadType=media 

заголовки HTTP, чтобы использовать при создании запроса простой загрузки включают в себя:

Content-Type. Установите один из допустимых типов данных носителя массовой информации, указанных в ссылке API.

Контент-длина. Установите количество загружаемых байтов. Не требуется, если вы используете кодированное кодирование передачи. Пример: Простая загрузка

В следующем примере показано использование простого запроса на загрузку для API-интерфейса накопителя.

POST /upload/drive/v3/files?uploadType=media HTTP/1.1 

Host: www.googleapis.com 

Content-Type: image/jpeg 

Content-Length: number_of_bytes_in_file 

Authorization: Bearer your_auth_token 

Вышеупомянутые данные предоставлены в формате JPEG, и вы можете добавлять или изменять типы контента.

Больше можно найти здесь: https://developers.google.com/drive/v3/web/manage-uploads#simple

 Смежные вопросы

  • Нет связанных вопросов^_^