public static RestRequest RapidApiClientRequest(ApiSettingsType setting) { var request = new RestRequest(Method.GET); request.AddHeader("x-rapidapi-host", RapidHeaderHostParameter(setting)); request.AddHeader("x-rapidapi-key", RapidApiKey); return(request); }
public static string RapidApiBaseUri(ApiSettingsType setting, ApiEndPointType endpoint) { if (setting == ApiSettingsType.GeoLocationSettings) { return(string.Concat("https://", RapidHeaderHostParameter(setting), "/")); } else { return(string.Concat("https://", RapidHeaderHostParameter(setting), "/", endpoint.GetEnumValue().GetValue().ToLowerInvariant(), "/")); } }
public static string RapidApiRequestUri(ApiSettingsType setting, ApiEndPointType endpoint, string host) { string baseUri = RapidApiBaseUri(setting, endpoint); string requestUri = string.Empty; if (setting == ApiSettingsType.GeoLocationSettings) { requestUri = string.Concat(baseUri, host, endpoint.GetQueryStringParameters(host, RapidApiToken(setting), RapidApiResponseFormat)); } else { requestUri = string.Concat(baseUri, endpoint.GetQueryStringParameters(host, RapidApiToken(setting), RapidApiResponseFormat)); } return(requestUri); }
public static Enum GetEnumValue(this ApiSettingsType apiSettingsType) { Enum value = null; switch (apiSettingsType) { case ApiSettingsType.GeoLocationSettings: value = ApiSettingsType.GeoLocationSettings; break; case ApiSettingsType.NetworkApiSettings: value = ApiSettingsType.NetworkApiSettings; break; case ApiSettingsType.RdapSettings: value = ApiSettingsType.RdapSettings; break; } return(value); }
public static RestClient RapidApiHttpClient(ApiSettingsType setting, ApiEndPointType endpoint, string host) { return(new RestClient(RapidApiRequestUri(setting, endpoint, host))); }
public static string RapidApiToken(ApiSettingsType setting) => ConfigurationHelper.GetConfiguration(string.Concat("RapidApiSettings:", setting.GetEnumValue().GetValue()), "ApiToken");
public static string RapidHeaderHostParameter(ApiSettingsType setting) => ConfigurationHelper.GetConfiguration(string.Concat("RapidApiSettings:", setting.GetEnumValue().GetValue()), "HostName");