Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

131
Visualizações
Problema al leer JSON desde MVC .Net Core Controller

Tengo una aplicación web en ASP.Net Core 5, que también consulta una API web en .Net core. Este contenido que devuelve en formato JSON debe leerse desde un Archivo llamado landing.js. El problema es que los datos llegan a la variable (data) pero no puedo acceder a sus métodos, siempre diseños indefinidos

¿Devolveré los resultados en String fine desde el controlador? en realidad debería llegar en JSON hacia el JS.

mi controlador:

 public async Task<IActionResult> GetPodcastLandingPortada() { List<PPodcast> ppodcastPortada = new List<PPodcast>(); string jsonresultado = ""; using (var httpClient = new HttpClient()) { using (var response = await httpClient.GetAsync("https://localhost:44379/api/Podcast/ObtenerPodcastPortadaPrincipal")) { string apiResponse = await response.Content.ReadAsStringAsync(); //ppodcastPortada = JsonConvert.DeserializeObject<List<PPodcast>>(apiResponse); jsonresultado = JsonConvert.DeserializeObject(apiResponse).ToString(); } } return Ok(jsonresultado); }

mi archivo landing.js

 window.onload = function () { _getPortadaPrincipal();

} función _getPortadaPrincipal() {

 let ruta = '/podcast/GetPodcastLandingPortada'; $.ajax({ type: 'GET', url: ruta, contentType: JSON, processData: false, success: function (data) { console.log(data.titulo); //this is where it returns undefinned, but the data variable is loaded $("#portadaPrincipal").html(row); console.log(data); }, error: function () { alert("Error en la carga de la Portada"); }, });

}

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En primer lugar, hizo algo duplicado para devolver un json. Entonces simplemente return Ok(apiResponse); y muévalo después de la string apiResponse = await response.Content.ReadAsStringAsync(); en el using :

 using (var response = await httpClient.GetAsync("https://localhost:44379/api/Podcast/ObtenerPodcastPortadaPrincipal")) { string apiResponse = await response.Content.ReadAsStringAsync(); return Ok(apiResponse); }

En segundo lugar, si desea obtener el valor del elemento en json, también debe convertir json en objeto en js.

Entonces, la forma correcta de obtener el elemento en respuesta debería ser la siguiente:

 public async Task<IActionResult> GetPodcastLandingPortada() { using (var httpClient = new HttpClient()) { using (var response = await httpClient.GetAsync("url")) { string apiResponse = await response.Content.ReadAsStringAsync(); var model = JsonConvert.DeserializeObject<List<PPodcast>(apiResponse); return Ok(model); } } }

Entonces puedes obtener el artículo:

 console.log(data[0].xxx); //because what you return is an array
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda