Sequencing.WeatherApp.Controllers.OAuth.AuthWorker.RefreshToken C# (CSharp) Method

RefreshToken() public method

Refreshes existing token
public RefreshToken ( string refreshToken ) : AuthInfo
refreshToken string OAuth refresh token
return AuthInfo
        public AuthInfo RefreshToken(string refreshToken)
        {
            var _webRequest = CreateRq();
            try
            {
                using (var _str = _webRequest.GetRequestStream())
                using (var _sw = new StreamWriter(_str))
                {
                    _sw.Write("grant_type={0}&refresh_token={1}", "refresh_token", refreshToken);
                    _sw.Flush();
                }
                var _webResponse = _webRequest.GetResponse();
                using (var _stream = _webResponse.GetResponseStream())
                using (var _sr = new StreamReader(_stream))
                {
                    var _readToEnd = _sr.ReadToEnd();
                    var _res = SimpleJson.DeserializeObject<TokenInfo>(_readToEnd);
                    return new AuthInfo { Success = true, Token = _res };
                }
            }
            catch (WebException _ex)
            {
                if (_ex.Response != null)
                {
                    using (Stream _rs = _ex.Response.GetResponseStream())
                    using (var _sr = new StreamReader(_rs))
                    {
                        string _readToEnd = _sr.ReadToEnd();
                        return new AuthInfo
                               {
                                   Success = false,
                                   ErrorMessage =
                                       "Error while refreshing token, HTTP:" + _ex.Status + ":" + _readToEnd
                               };
                    }
                }
                return new AuthInfo {Success = false, ErrorMessage = "Error while refreshing token, HTTP:" + _ex.Status};
            }
        }