我正在尝试使用Google客户端API和Google Drive API通过“打开方式”功能登录并显示存储在Google云端硬盘中的DICOM(* .dcm)文件中包含的信息。
代码:
gapi.load('client:auth2', onApiLoad);
function onApiLoad() {
gapi.client.init({
'apiKey': apiKey,
'discoveryDocs': ['https://www.googleapis.com/discovery/v1/apis/drive/v3/rest'],
'clientId': clientId,
'scope': 'https://www.googleapis.com/auth/drive.readonly'
}).then( function () {
console.log('init success');
}, function(error) {
console.log('init fail', error);
});
}
使用gapi.client.init
的init可以在桌面浏览器中正常运行,但是从驱动器移动应用程序(2017年6月28日的v2.7.252.04.33,Android 6.0)中失败,抱怨sessionStorage is not available in the current the environment
(错误:{{ 1}})。
我在Google客户端GitHub(https://github.com/google/google-api-javascript-client/issues/324)上写了一个问题,该回答建议询问驱动人员使用什么授权。
所以我在这里问一下,我想通过Google云端硬盘应用尝试做什么以及我应该使用哪种授权?
供参考,以下是Chrome应用清单:
idpiframe_initialization_failed
注意:repo是开源的:https://github.com/ivmartel/dwvgapi(https://github.com/ivmartel/dwvgapi/blob/master/src/google.js中的初始化代码),Chrome应用程序名称相同(dwvgapi)。
注意2:代码类似于驱动器快速入门示例(https://developers.google.com/drive/v3/web/quickstart/js#step_2_set_up_the_sample)