mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
optimize code in searchsuggestions
This commit is contained in:
parent
1003ce4160
commit
c939924ec8
2 changed files with 11 additions and 22 deletions
|
|
@ -17,12 +17,15 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
|
||||||
{
|
{
|
||||||
public override async Task<List<string>> Suggestions(string query, CancellationToken token)
|
public override async Task<List<string>> Suggestions(string query, CancellationToken token)
|
||||||
{
|
{
|
||||||
Stream resultStream;
|
JsonElement json;
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
const string api = "https://api.bing.com/qsonhs.aspx?q=";
|
const string api = "https://api.bing.com/qsonhs.aspx?q=";
|
||||||
resultStream = await Http.GetStreamAsync(api + Uri.EscapeUriString(query), token).ConfigureAwait(false);
|
using var resultStream = await Http.GetStreamAsync(api + Uri.EscapeUriString(query), token).ConfigureAwait(false);
|
||||||
|
if (resultStream.Length == 0) return new List<string>(); // this handles the cancellation
|
||||||
|
json = (await JsonDocument.ParseAsync(resultStream, cancellationToken: token)).RootElement.GetProperty("AS");
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (TaskCanceledException)
|
catch (TaskCanceledException)
|
||||||
{
|
{
|
||||||
|
|
@ -33,15 +36,6 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
|
||||||
Log.Exception("|Bing.Suggestions|Can't get suggestion from Bing", e);
|
Log.Exception("|Bing.Suggestions|Can't get suggestion from Bing", e);
|
||||||
return new List<string>();
|
return new List<string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (resultStream.Length == 0) return new List<string>(); // this handles the cancellation
|
|
||||||
|
|
||||||
JsonElement json;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
using (resultStream)
|
|
||||||
json = (await JsonDocument.ParseAsync(resultStream)).RootElement.GetProperty("AS");
|
|
||||||
}
|
|
||||||
catch (JsonException e)
|
catch (JsonException e)
|
||||||
{
|
{
|
||||||
Log.Exception("|Bing.Suggestions|can't parse suggestions", e);
|
Log.Exception("|Bing.Suggestions|can't parse suggestions", e);
|
||||||
|
|
|
||||||
|
|
@ -16,11 +16,15 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
|
||||||
{
|
{
|
||||||
public override async Task<List<string>> Suggestions(string query, CancellationToken token)
|
public override async Task<List<string>> Suggestions(string query, CancellationToken token)
|
||||||
{
|
{
|
||||||
Stream resultStream;
|
JsonDocument json;
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
const string api = "https://www.google.com/complete/search?output=chrome&q=";
|
const string api = "https://www.google.com/complete/search?output=chrome&q=";
|
||||||
resultStream = await Http.GetStreamAsync(api + Uri.EscapeUriString(query)).ConfigureAwait(false);
|
using var resultStream = await Http.GetStreamAsync(api + Uri.EscapeUriString(query)).ConfigureAwait(false);
|
||||||
|
if (resultStream.Length == 0) return new List<string>();
|
||||||
|
json = await JsonDocument.ParseAsync(resultStream);
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (TaskCanceledException)
|
catch (TaskCanceledException)
|
||||||
{
|
{
|
||||||
|
|
@ -31,15 +35,6 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
|
||||||
Log.Exception("|Google.Suggestions|Can't get suggestion from google", e);
|
Log.Exception("|Google.Suggestions|Can't get suggestion from google", e);
|
||||||
return new List<string>();
|
return new List<string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (resultStream.Length == 0) return new List<string>();
|
|
||||||
JsonDocument json;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
using (resultStream)
|
|
||||||
json = await JsonDocument.ParseAsync(resultStream);
|
|
||||||
}
|
|
||||||
catch (JsonException e)
|
catch (JsonException e)
|
||||||
{
|
{
|
||||||
Log.Exception("|Google.Suggestions|can't parse suggestions", e);
|
Log.Exception("|Google.Suggestions|can't parse suggestions", e);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue