Ejemplo n.º 1
0
        public string GetOauthCodeUrl(string clientId, AppScopeEnum scope, string redirectUris = "urn:ietf:wg:oauth:2.0:oob")
        {
            var getScope     = Uri.EscapeDataString(AppScopesConverter.GetScopes(scope));
            var oauthCodeUrl = $"{_instanceUrl}/oauth/authorize?scope={getScope}&response_type=code&redirect_uri={redirectUris}&client_id={clientId}";

            return(oauthCodeUrl);
        }
        public void ConvertFollow()
        {
            var enumWithNoFlag = AppScopeEnum.Follow;
            var value          = AppScopesConverter.GetScopes(enumWithNoFlag);

            Assert.AreEqual("follow", value);
        }
        public void ConvertWrite()
        {
            var enumWithNoFlag = AppScopeEnum.Write;
            var value          = AppScopesConverter.GetScopes(enumWithNoFlag);

            Assert.AreEqual("write", value);
        }
        public void ConvertRead()
        {
            var enumWithNoFlag = AppScopeEnum.Read;
            var value          = AppScopesConverter.GetScopes(enumWithNoFlag);

            Assert.AreEqual("read", value);
        }
        public void ConvertReadWriteFollow()
        {
            var enumWithNoFlag = AppScopeEnum.Read | AppScopeEnum.Write | AppScopeEnum.Follow;
            var value          = AppScopesConverter.GetScopes(enumWithNoFlag);

            Assert.IsTrue(value.Contains("read"));
            Assert.IsTrue(value.Contains("write"));
            Assert.IsTrue(value.Contains("follow"));
        }
Ejemplo n.º 6
0
        public async Task <AppInfo> CreateAppAsync(string clientName, AppScopeEnum scopes, string website, string redirectUris = "urn:ietf:wg:oauth:2.0:oob")
        {
            var parameters = new List <KeyValuePair <string, string> >();

            parameters.Add(new KeyValuePair <string, string>("client_name", clientName));
            parameters.Add(new KeyValuePair <string, string>("redirect_uris", redirectUris));
            parameters.Add(new KeyValuePair <string, string>("scopes", AppScopesConverter.GetScopes(scopes)));
            parameters.Add(new KeyValuePair <string, string>("website", website));

            var formUrlEncodedContent = new FormUrlEncodedContent(parameters);
            var url      = _instanceUrl + ApiRoutes.CreateApp;
            var response = await _httpClient.PostAsync(url, formUrlEncodedContent);

            var content = await response.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <AppInfo>(content));
        }
Ejemplo n.º 7
0
        public async Task <TokenInfo> GetTokenInfoAsync(string clientId, string clientSecret, string userEmail, string userPassword, AppScopeEnum scope)
        {
            var parameters = new List <KeyValuePair <string, string> >();

            parameters.Add(new KeyValuePair <string, string>("client_id", clientId));
            parameters.Add(new KeyValuePair <string, string>("client_secret", clientSecret));
            parameters.Add(new KeyValuePair <string, string>("grant_type", "password"));
            parameters.Add(new KeyValuePair <string, string>("username", userEmail));
            parameters.Add(new KeyValuePair <string, string>("password", userPassword));
            parameters.Add(new KeyValuePair <string, string>("scope", AppScopesConverter.GetScopes(scope)));

            var formUrlEncodedContent = new FormUrlEncodedContent(parameters);
            var url      = _instanceUrl + ApiRoutes.GetToken;
            var response = await _httpClient.PostAsync(url, formUrlEncodedContent);

            var content = await response.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <TokenInfo>(content));
        }