From 131657e5e027cef648fb6660f204c3e758ef5c59 Mon Sep 17 00:00:00 2001 From: JustArchi Date: Sun, 16 Sep 2018 17:10:03 +0200 Subject: [PATCH] Correct /Api/WWW/Send to return string --- .../IPC/Controllers/Api/WWWController.cs | 4 +- ArchiSteamFarm/WebBrowser.cs | 48 +++++++++---------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/ArchiSteamFarm/IPC/Controllers/Api/WWWController.cs b/ArchiSteamFarm/IPC/Controllers/Api/WWWController.cs index 271e485fd..b89b0278e 100644 --- a/ArchiSteamFarm/IPC/Controllers/Api/WWWController.cs +++ b/ArchiSteamFarm/IPC/Controllers/Api/WWWController.cs @@ -68,12 +68,12 @@ namespace ArchiSteamFarm.IPC.Controllers.Api { return BadRequest(new GenericResponse(false, string.Format(Strings.ErrorIsInvalid, nameof(request.URL)))); } - WebBrowser.HtmlDocumentResponse urlResponse = await Program.WebBrowser.UrlGetToHtmlDocument(request.URL).ConfigureAwait(false); + WebBrowser.StringResponse urlResponse = await Program.WebBrowser.UrlGetToString(request.URL).ConfigureAwait(false); if (urlResponse?.Content == null) { return BadRequest(new GenericResponse(false, string.Format(Strings.ErrorRequestFailedTooManyTimes, WebBrowser.MaxTries))); } - return Ok(new GenericResponse(urlResponse.Content.DocumentNode.InnerHtml)); + return Ok(new GenericResponse(urlResponse.Content)); } } } diff --git a/ArchiSteamFarm/WebBrowser.cs b/ArchiSteamFarm/WebBrowser.cs index 31b8fadd2..ed5bafa68 100644 --- a/ArchiSteamFarm/WebBrowser.cs +++ b/ArchiSteamFarm/WebBrowser.cs @@ -203,6 +203,30 @@ namespace ArchiSteamFarm { return new ObjectResponse(response, obj); } + internal async Task UrlGetToString(string request, string referer = null, byte maxTries = MaxTries) { + if (string.IsNullOrEmpty(request) || (maxTries == 0)) { + ArchiLogger.LogNullError(nameof(request) + " || " + nameof(maxTries)); + return null; + } + + for (byte i = 0; i < maxTries; i++) { + using (HttpResponseMessage response = await InternalGet(request, referer).ConfigureAwait(false)) { + if (response == null) { + continue; + } + + return new StringResponse(response, await response.Content.ReadAsStringAsync().ConfigureAwait(false)); + } + } + + if (maxTries > 1) { + ArchiLogger.LogGenericWarning(string.Format(Strings.ErrorRequestFailedTooManyTimes, maxTries)); + ArchiLogger.LogGenericDebug(string.Format(Strings.ErrorFailingRequest, request)); + } + + return null; + } + internal async Task UrlGetToXmlDocument(string request, string referer = null, byte maxTries = MaxTries) { if (string.IsNullOrEmpty(request) || (maxTries == 0)) { ArchiLogger.LogNullError(nameof(request) + " || " + nameof(maxTries)); @@ -423,30 +447,6 @@ namespace ArchiSteamFarm { } } - private async Task UrlGetToString(string request, string referer = null, byte maxTries = MaxTries) { - if (string.IsNullOrEmpty(request) || (maxTries == 0)) { - ArchiLogger.LogNullError(nameof(request) + " || " + nameof(maxTries)); - return null; - } - - for (byte i = 0; i < maxTries; i++) { - using (HttpResponseMessage response = await InternalGet(request, referer).ConfigureAwait(false)) { - if (response == null) { - continue; - } - - return new StringResponse(response, await response.Content.ReadAsStringAsync().ConfigureAwait(false)); - } - } - - if (maxTries > 1) { - ArchiLogger.LogGenericWarning(string.Format(Strings.ErrorRequestFailedTooManyTimes, maxTries)); - ArchiLogger.LogGenericDebug(string.Format(Strings.ErrorFailingRequest, request)); - } - - return null; - } - private async Task UrlPostToString(string request, IReadOnlyCollection> data = null, string referer = null, byte maxTries = MaxTries) { if (string.IsNullOrEmpty(request) || (maxTries == 0)) { ArchiLogger.LogNullError(nameof(request) + " || " + nameof(maxTries));