Beispiel #1
0
        async Task _setupToken(StandardHttpConfig config)
        {
            var token = await _tokenGetService.GetToken();

            if (token == null)
            {
                return;
            }

            config.Auth = token;
            config.AuthScheme = "Bearer";
        }
Beispiel #2
0
        public override async Task<IHttpTransferConfig> GetConfig(string url, string verb)
        {
            var config = new StandardHttpConfig
            {
                Accept = "application/json",
                IsValid = true,
                Url = url,
                BaseUrl = url,
                Verb = verb,
                Headers = new Dictionary<string, string>()
            };

            await _setupToken(config);

            return config;
        }
        public async override Task<IHttpTransferConfig> GetConfig(string url, string verb)
        {
            var burl = BaseUrl;

            if (url.EndsWith("token") || url.Contains("auth/") || url.Contains("/auth") || url.Contains("auth?"))
            {
                burl = _authBase;
            }

            var adjustedUrl = url.StartsWith("http") ? url : string.Format("{0}{1}", burl, url);



            var config = new StandardHttpConfig
            {
                Accept = "application/json",
                IsValid = true,
                Url = adjustedUrl,
                BaseUrl = burl,
                Verb = verb,
                Headers = new Dictionary<string, string>()
            };

            if (url.EndsWith("token"))
            {
                config.ContentEncoding = "text/plain";
                config.Accept = "text/plain";
            }

            if (!_noToken(adjustedUrl))
            {
                var token = await _getToken();

                if (token == null)
                {
                    //this should not be null, means some kind of expiry. 
                    //new TokenProblemMessage().Send();
                    return null;
                }

                config.Auth = token;
                config.AuthScheme = "Token";
            }

            return config;
        }