From 4bc663c2ab9c800b72b5ccb38f3e82977df1b317 Mon Sep 17 00:00:00 2001 From: Serghei Cebotari Date: Thu, 2 Nov 2023 23:14:49 +0300 Subject: [PATCH 1/2] Revert "Fix query building with '&' sign" This reverts commit e462add7f3e24a5bcdf839ceccde7eafca9b7060. --- RhSolutions.AddIn/RhSolutions-AddIn.dna | 10 ++-------- RhSolutions.AddIn/RhSolutions.AddIn.csproj | 11 +++++------ RhSolutions.AddIn/Services/DatabaseClient.cs | 12 +++--------- 3 files changed, 10 insertions(+), 23 deletions(-) diff --git a/RhSolutions.AddIn/RhSolutions-AddIn.dna b/RhSolutions.AddIn/RhSolutions-AddIn.dna index 63149ff..1ece3ec 100644 --- a/RhSolutions.AddIn/RhSolutions-AddIn.dna +++ b/RhSolutions.AddIn/RhSolutions-AddIn.dna @@ -1,32 +1,26 @@ - - - - - - - + + - diff --git a/RhSolutions.AddIn/RhSolutions.AddIn.csproj b/RhSolutions.AddIn/RhSolutions.AddIn.csproj index ff5db43..d73b404 100644 --- a/RhSolutions.AddIn/RhSolutions.AddIn.csproj +++ b/RhSolutions.AddIn/RhSolutions.AddIn.csproj @@ -14,25 +14,24 @@ - 1701;1702 + 1701;1702 - 1701;1702 + 1701;1702 - 1701;1702 + 1701;1702 - 1701;1702 + 1701;1702 - true + true - diff --git a/RhSolutions.AddIn/Services/DatabaseClient.cs b/RhSolutions.AddIn/Services/DatabaseClient.cs index 3036e51..ac4dfa5 100644 --- a/RhSolutions.AddIn/Services/DatabaseClient.cs +++ b/RhSolutions.AddIn/Services/DatabaseClient.cs @@ -1,10 +1,8 @@ using Microsoft.Extensions.Caching.Memory; using Newtonsoft.Json; -using System.Web; using System.Net; using System.Net.Http; using System.Threading.Tasks; -using Microsoft.AspNetCore.Http.Extensions; namespace RhSolutions.Services; @@ -55,13 +53,9 @@ public class DatabaseClient : IDatabaseClient } else - { - QueryBuilder qb = new() - { - {"query", line} - }; - string request = @"https://rh.cebotari.ru/api/search" + qb.ToQueryString(); - + { + string request = @"https://rh.cebotari.ru/api/search?query=" + line; + if (!_memoryCache.TryGetValue(line, out IEnumerable products)) { var response = await _httpClient.GetAsync(request); From 6d6e91867ce67f2c4e3f3db47a14173fa3bb598d Mon Sep 17 00:00:00 2001 From: Serghei Cebotari Date: Thu, 2 Nov 2023 23:31:17 +0300 Subject: [PATCH 2/2] Use UriBuilder to create request uri --- RhSolutions.AddIn/Services/DatabaseClient.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/RhSolutions.AddIn/Services/DatabaseClient.cs b/RhSolutions.AddIn/Services/DatabaseClient.cs index ac4dfa5..69f7fc1 100644 --- a/RhSolutions.AddIn/Services/DatabaseClient.cs +++ b/RhSolutions.AddIn/Services/DatabaseClient.cs @@ -54,7 +54,11 @@ public class DatabaseClient : IDatabaseClient else { - string request = @"https://rh.cebotari.ru/api/search?query=" + line; + UriBuilder builder = new(@"https://rh.cebotari.ru/api/search") + { + Query = $"query={line.Replace("&", "%26")}" + }; + string request = builder.Uri.AbsoluteUri; if (!_memoryCache.TryGetValue(line, out IEnumerable products)) {