Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "access_token": "xxx",
- "token_type": "bearer",
- "expires_in": 86400,
- "refresh_token": "yyy",
- "created_at": 1524344276
- }
- public class OAuth2Token
- {
- [JsonProperty("access_token")]
- public string AccessToken { get; }
- [JsonProperty("token_type")]
- public string TokenType { get; }
- [JsonProperty("expires_in")]
- public int ExpiresIn { get; } //Seconds
- [JsonProperty("refresh_token")]
- public string RefreshToken { get; }
- [JsonProperty("created_at"), JsonConverter(typeof(SecondEpochConverter))]
- public DateTime CreatedAt { get; }
- }
- public class SecondEpochConverter : DateTimeConverterBase
- {
- private static readonly DateTime _epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
- public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
- {
- writer.WriteRawValue(((DateTime)value - _epoch).TotalSeconds.ToString());
- }
- public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
- {
- if (reader.Value == null) { return null; }
- return _epoch.AddSeconds((long)reader.Value);
- }
- }
Add Comment
Please, Sign In to add comment