private AuthToken CheckSessionToken(EdoLiteClient edoLiteClient) { if (string.IsNullOrWhiteSpace(SessionToken?.Token)) { // session token is not specified return(null); } try { // try calling a simple authenticated API method var authHeader = FormatAuthHeader(SessionToken); var pong = edoLiteClient.Get("incoming-documents", new[] { new Parameter("limit", 0, ParameterType.QueryString), new Parameter(authHeader.Item1, authHeader.Item2, ParameterType.HttpHeader), }); return(SessionToken); } catch { // session token is not valid return(null); } }
/// <summary> /// Authentication Step 2. /// 2.2. Получение ключа сессии /// </summary> private AuthToken GetToken(EdoLiteClient omsClient, AuthResponse authResponse, string signedData) { return(omsClient.Post <AuthToken>("session", new { uuid = authResponse.UUID, data = signedData, })); }
/// <summary> /// Authentication Step 1. /// 2.1. Запрос авторизации /// </summary> private AuthResponse Authenticate(EdoLiteClient omsClient) { return(omsClient.Get <AuthResponse>("session")); }