node.js - Error Refreshing Session "JSON text did not start with array or object and option to allow fragments not set." -


trying refresh access tokens after 60 min limit. running local node server. give context, have returned following data spotify authentication endpoint. storing session in nsuserdefaults, not sure if have store refresh token in location..

swap: tokendata  { access_token: 'bqazwk7kjbmtklzuvtpstw0xwmrww6zs2j6txoobmrh4p-cxw6shqqnzwebd9be38xz6zunlfdg-evetthwgorwa9gaqaooaqp5k4gfkevcbhlcdgvc_izjo1jh91fmb2o-l-yhejqc9dzuif7wwwcgfaxk2sj2qfnkp4mp13pxc9ilsnhnu-b9nfzawydohdf4', token_type: 'bearer', expires_in: 3600, refresh_token: 'aqdmpirx9wgwshk9aivybzlg1qjyv0avmgzeduwfvz0hggo5dhemksptevrciitzt_l4giflhpnfzlrxlmznksseru7ng8_3ssjphdsibdskjbdkjbdkudroc4zbegpwncjlmzgl4a' }     

when session expired in xcode, trigger function in xcode

if !session.isvalid() {  sptauth.defaultinstance().renewsession(session, withserviceendpointaturl: nsurl(string: tokenrefreshserviceurl), callback: { (error:nserror!, renewedsession:sptsession!) 

which points this..

app.post("/refresh", function(req,res){    console.log(req.body);    if(!req.body || !req.body.hasownproperty("refresh_token")) {     res.status(550).send("permission denied");      //the body not contain refresh token      return;   }    var encryptedtoken = new buffer(req.body.refresh_token, 'base64');//switched underscore   var refresh_token = req.body.refresh_token;   console.log("refresh: refresh_token: %s", refresh_token);   var formdata = {      "grant_type": "refresh_token",      "refresh_token": refresh_token    };   console.log("refresh: posting request %s:", url.resolve(config.endpoint, "/api/token"), formdata);    request.post({     url: url.resolve(config.endpoint, '/api/token'),      headers: {       "authorization": auth_header,       "content-type": "application/x-www-form-urlencoded"     },     form: formdata    }, function(err, response, body) {       if(err) {         console.log("refresh: error: %s", err);         res.status(550).send("internal server error");         return;       }       if (response.statuscode != 200) {         console.log("refresh: response: %s", response.statuscode);         res.status(550).send("permission denied");         return;       }       console.log("refresh: body: %s", body);         res.status(response.statuscode).set({             "content-type": "application/json"         }).send(body);     }); }); 

receive following error in xcode: error refreshing token: jsonerror refreshing session error domain=nscocoaerrordomain code=3840 "json text did not start array or object , option allow fragments not set."}

not sure if have store refresh token somewhere? store sessions in nsuser defaults.


Comments

Popular posts from this blog

android - Why am I getting the message 'Youractivity.java is not an activity subclass or alias' -

Making Empty C++ Project: General exception (Exception from HRESULT:0x80131500) Visual Studio Community 2015 -

How to fix java warning for "The value of the local variable is not used " -