コード例 #1
0
        public override async Task <IHttpTransferConfig> GetConfig(string url, string verb)
        {
            var baseUrl = new Uri(_config["ArloBaseUrl"]);

            var finalUrl = url.StartsWith("http:") ? new Uri(url) : new Uri(baseUrl, url);

            var config = new StandardHttpConfig
            {
                Accept                = "application/xml",
                ContentEncoding       = "application/xml",
                IsValid               = true,
                Url                   = finalUrl.ToString(),
                BaseUrl               = baseUrl.ToString(),
                Verb                  = verb,
                Headers               = new Dictionary <string, string>(),
                Retries               = 1,
                RetryOnNonSuccessCode = false,
                Gzip                  = true,
                Auth                  = _getPassword(),
                AuthScheme            = "Basic"
            };

            Debug.WriteLine($"Transferring: {finalUrl.ToString()}");

            return(config);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        public override async Task <IHttpTransferConfig> GetConfig(string service, string verb)
        {
            var baseUrl = _config.ServiceBase;

            var url = $"{baseUrl}/{service}";

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

            return(config);
        }
コード例 #4
0
#pragma warning disable 1998 // Overridden method
        public override async Task <IHttpTransferConfig> GetConfig(string url, string verb)
#pragma warning restore 1998
        {
            var config = new StandardHttpConfig
            {
                Accept          = "application/json",
                IsValid         = true,
                Url             = url,
                BaseUrl         = url,
                Verb            = verb,
                Headers         = new Dictionary <string, string>(),
                Retries         = 2,
                ContentEncoding = "application/json"
                                  //ContentEncoding = verb == "POST" ? "application/x-www-form-urlencoded" : "text/plain"
            };

            config.Headers.Add("Authorization", "Bearer " + _tokenService.Token);

            return(config);
        }