Мне нужно сделать запрос на получение моего ASP.NET Core Server с контроллера ESP32. Проблема в том, что запрос выполнен успешно, но я не могу прочитать строку, потому что она содержит странные символы (изображение ниже)
Вот мой код:
#include <Arduino.h>
#include "WiFi.h"
#include "HTTPClient.h"
const char* ssid = "ssid";
const char* password = "pass";
void setup() {
Serial.begin(9600);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");
}
Serial.println("Connected to the WiFi network");
}
void loop() {
if ((WiFi.status() == WL_CONNECTED)) {
HTTPClient http;
http.begin("http://172.16.1.146:45455/api/controller/getlastresult/1");
int httpCode = http.GET();
if (httpCode == 200) {
String payload = http.getString();
Serial.println(httpCode);
Serial.println(payload);
}
else {
Serial.println("Error on HTTP request");
}
http.end();
}
delay(1000);
}
Я заметил, что если я изменю URL, например, поставлю https://httpbin.org/get, он отлично работает
Итак, я полагаю, проблема в моем коде ASP.NET Core. Вот код этого запроса:
[HttpGet]
[Route("api/controller/getlastresult/{id}")]
public IActionResult GetLatestResultForController(string id)
{
var list = _dbAccessLayer.GetAllVoteResults();
var appropriateResults = list.Where(item => item.DeviceId.Equals(id) && item.Status == "Finished")
.OrderBy(item => item.TimeStarted);
if (appropriateResults.Any())
return Ok(appropriateResults.Last().Result);
return BadRequest();
}
В почтальоне это работает нормально, поэтому я очень запутался
Надеюсь, вы можете помочь мне с этим, спасибо