Advertisement
stuppid_bot

Vk Access Token js

Feb 2nd, 2016
298
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // requires https.js
  2. function AccessToken() {}
  3.  
  4. AccessToken.prototype = {
  5.   get isExpired () {
  6.     return this.expiresIn && Date.now() > this.created + this.expiresIn * 1000;
  7.   },
  8.   fromResponse: function(response) {
  9.     this.accessToken = response.access_token;
  10.     this.email = response.email;
  11.     this.expiresIn = response.expires_in;
  12.     this.secret = response.secret;
  13.     this.userId = response.user_id;
  14.     this.created = Date.now();
  15.     return this;
  16.   },
  17.   /*
  18.   var token = new AccessToken().fromJSON('{"access_token":"533bacf01e11f55b536a565b57531ac114461ae8736d6506a3","expires_in":43200, "user_id":6492}');
  19.   console.log(token.isExpired); // false
  20.   token.created = 0;
  21.   console.log(token.isExpired); // true
  22.   */
  23.   /*
  24.   fromJSON: function(str) {
  25.     return this.fromResponse(JSON.parse(str));
  26.   },
  27.   // var token = new AccessToken().fromHash("http://REDIRECT_URI#access_token=533bacf01e11f55b536a565b57531ad114461ae8736d6506a3&expires_in=86400&user_id=8492")
  28.   fromHash: function(url) {
  29.     var hash = url.replace(/.*#/, '');
  30.     var response = parseQueryString(hash);
  31.     if (response.expires_in) {
  32.       response.expires_in = parseInt(response.expires_in);
  33.     }
  34.     if (response.user_id) {
  35.       response.user_id = parseInt(response.user_id);
  36.     }
  37.     return this.fromResponse(response);
  38.   },
  39.   */
  40.   SERIALIZED_PROPERTIES: ['accessToken', 'created', 'email', 'expiresIn',
  41.     'secret', 'userId'],
  42.   // localStorage.setItem('access_token', accessToken.serialize())
  43.   serialize: function() {
  44.     var self = this;
  45.     var o = {};
  46.     self.SERIALIZED_PROPERTIES.forEach(function(p) {
  47.       if (self[p] != null) {
  48.         o[p] = self[p];
  49.       }
  50.     });
  51.     return JSON.stringify(o);
  52.   },
  53.   /*
  54.   var token = new AccessToken();
  55.   var serialized = localStorage.getItem('access_token');
  56.   if (serialized) {
  57.     token.parse(serialized);
  58.   }
  59.   */
  60.   parse: function(serialized) {
  61.     var self = this;
  62.     var o = JSON.parse(serialized);
  63.     self.SERIALIZED_PROPERTIES.forEach(function(p) {
  64.       self[p] = o[p];
  65.     });
  66.     return self;
  67.   },
  68. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement