Exemplo n.º 1
0
        public static async Task SignIn(IRestClient restClient, IAccessControlManager accessControlManager)
        {
            string jwt;

            restClient.Timeout = -1;
            var request = new RestRequest("user/user/sign-in", Method.POST);

            request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
            request.AddParameter("email", "*****@*****.**");
            request.AddParameter("password", "Password1!");
            IRestResponse response = await restClient.ExecuteAsync(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new Exception($"Unexpected response from SignIn call: {response.StatusCode} - {response.Content}");
            }

            try
            {
                var jObject = JObject.Parse(response.Content);
                jwt = jObject["oauth2"]["jwt"].ToString();
            }
            catch (Exception e)
            {
                throw new Exception($"Unable to parse response from SignIn: {response.Content}:", e);
            }

            // Store sign-in JWT
            var userAccess = new UserAccess(jwt, "", null);

            accessControlManager.SetUserAccess(userAccess);
        }