google drive sdk - updateToken auth error when trying to work with application data folder -


i have working drive-integrated app, javascript , go-based, following scopes:

https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/drive 

now try work application folder. if don't change scopes, expected, error claiming app scope not set properly. add following scope (in api-console , @ app):

https://www.googleapis.com/auth/drive.appdata 

now unfortunately error @ oauth.updatetoken googelapi function following error message:

oautherror: updatetoken: 400 bad request 

have missunderstood how application folder supposed used ?

you need show user dialog again , retrieve new token instead of updating existing. create new auth code url config.authcodeurl() , ask user permissions. once permissions granted user, exchange code google endpoints calling t.exchange(code).

var config = &oauth.config{   clientid:     "your_client_id",   clientsecret: "your_client_secret",   scope:        "your_scopes",   redirecturl:  "your_redirect_uri",   authurl:      "https://accounts.google.com/o/oauth2/auth",   tokenurl:     "https://accounts.google.com/o/oauth2/token", }  authurl := config.authcodeurl("state") fmt.printf("go following link in browser: %v\n", authurl) t := &oauth.transport{   config:    config,   transport: http.defaulttransport, }  // read code, , exchange token. fmt.printf("enter verification code: ") var code string fmt.scanln(&code) _, err := t.exchange(code) if err != nil {   fmt.printf("an error occurred exchanging code: %v\n", err) } 

Comments

Popular posts from this blog

android - getbluetoothservice() called with no bluetoothmanagercallback -

sql - ASP.NET SqlDataSource, like on SelectCommand -

ios - Undefined symbols for architecture armv7: "_OBJC_CLASS_$_SSZipArchive" -