ASP.NET Core + ESP32 HTTP-запросы, GET возвращает код 200, но содержимое не читается - PullRequest
0 голосов
/ 26 марта 2019

Мне нужно сделать запрос на получение моего ASP.NET Core Server с контроллера ESP32. Проблема в том, что запрос выполнен успешно, но я не могу прочитать строку, потому что она содержит странные символы (изображение ниже)

enter image description here

Вот мой код:

#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, он отлично работает

enter image description here

Итак, я полагаю, проблема в моем коде 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();
    }

В почтальоне это работает нормально, поэтому я очень запутался

enter image description here

Надеюсь, вы можете помочь мне с этим, спасибо

...