VueGapi 在请求多个范围时啥都不做
Posted
技术标签:
【中文标题】VueGapi 在请求多个范围时啥都不做【英文标题】:VueGapi do nothing when requesting with multiple scopesVueGapi 在请求多个范围时什么都不做 【发布时间】:2021-12-17 04:23:53 【问题描述】:这是我的 Vue3 main.js
app.use(VueGapi,
apiKey: 'MyApiKey',
clientId: 'myClientId.apps.googleusercontent.com',
discoveryDocs: ['https://clas-s-room.googleapis.com/$discovery/rest?version=v1'],
scope: "https://www.googleapis.com/auth/clas-s-room.profile",
)
app.mount('#app')
但是我需要提供很多范围,所以我做了
const SCOPES = ['https://www.googleapis.com/auth/clas-s-room.courses.readonly',
'https://www.googleapis.com/auth/clas-s-room.profile.emails',
'https://www.googleapis.com/auth/clas-s-room.profile.photos',
'https://www.googleapis.com/auth/clas-s-room.rosters',
'https://www.googleapis.com/auth/clas-s-room.rosters.readonly'];
并将SCOPES
分配给scope
app.use(VueGapi,
apiKey: 'MyApiKey',
clientId: 'myClientId.apps.googleusercontent.com',
discoveryDocs: ['https://clas-s-room.googleapis.com/$discovery/rest?version=v1'],
scope: SCOPES,
)
app.mount('#app')
从我的 vue 组件调用
this.$gapi.login().then(( currentUser, gapi, hasGrantedScopes ) =>
console.log( currentUser, gapi, hasGrantedScopes )
)
当我按下登录按钮时,仅当我将scope
设置为scope: "https://www.googleapis.com/auth/clas-s-room.profile"
之类的单数范围时才有效,但是当我将SCOPES
分配给scope
时,什么也没有发生(没有错误,没有什么)。我哪里做错了?
【问题讨论】:
【参考方案1】:scope
should be a space-delimited string.
试试
...
scope: SCOPES.join(' ')
...
【讨论】:
哇哦,解决了...谢谢!以上是关于VueGapi 在请求多个范围时啥都不做的主要内容,如果未能解决你的问题,请参考以下文章
pushViewController 在多个标签应用程序中啥都不做?
AFNetworking 2.0 设备离线时的队列请求 setReachabilityStatusChangeBlock 啥都不做