public Result RandomImage(Type type, bool nsfw = false) { var typeString = (type.GetAttribute <DescriptionAttribute>()?.Description ?? type.ToString()).ToLower(); var result = Call("i/r/", new[] { new RestSharp.Parameter("type", typeString, RestSharp.ParameterType.GetOrPost), new RestSharp.Parameter("nsfw", nsfw.ToString().ToLower(), RestSharp.ParameterType.GetOrPost), }); // Absolute path. if (!string.IsNullOrEmpty(result?.Path)) { result.Path = BaseUrl.Append(result.Path).ToString(); } return(result); }
public HttpRequestMessage Build() { var uri = BaseUrl.Append(UrlSegments); var getParams = QueryStringParameters.ToQueryString(); if (!string.IsNullOrEmpty(getParams)) { uri = uri.Append($"?{getParams}"); } var req = new HttpRequestMessage(Method, uri); foreach ((var header, var value) in Headers) { req.Headers.Add(header, value); } var jsonBody = Body == null ? null : JsonSerializer.Serialize(Body, Degiro.JsonSerializerOptions); if (!string.IsNullOrEmpty(jsonBody) && !jsonBody.Equals("{}", StringComparison.OrdinalIgnoreCase)) { req.Content = new StringContent(jsonBody, Encoding.UTF8, "application/json"); } return(req); }