5
respostas

Erro /Artistas

Toda vez que tento entrar na página de artistas aparece esse erro. E o problema não é com o banco, porque executando só a api funciona normal Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

5 respostas

Olá Samuel, boa tarde!

Vamos tentar resolver esse problema juntos. Pelo que você descreveu e com base nas imagens fornecidas, parece que há um erro não tratado na sua aplicação Blazor quando você tenta acessar a página de artistas. Aqui estão algumas coisas que você pode verificar:

  1. Verifique a API:

    • Certifique-se de que a API está realmente rodando e acessível. Você mencionou que a API funciona normalmente quando executada separadamente, mas é bom garantir que a URL e a porta estão corretas.
  2. Verifique o método GetArtistasAsync:

    • No método OnInitializedAsync, você está chamando artistas = await artistaAPI.GetArtistasAsync();. Certifique-se de que o método GetArtistasAsync está retornando uma lista de ArtistaResponse corretamente e que não está lançando nenhuma exceção.
  3. Tratamento de Erros:

    • Adicione um bloco try-catch no método OnInitializedAsync para capturar e logar qualquer exceção que possa estar ocorrendo.
@code {
    private ICollection<ArtistaResponse>? artistas;

    protected override async Task OnInitializedAsync()
    {
        try
        {
            artistas = await artistaAPI.GetArtistasAsync();
        }
        catch (Exception ex)
        {
            // Log the exception (use a logging framework or simply output to console for now)
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}
  1. Verifique se artistas não é nulo:
    • No seu código, você está verificando if(artistas is not null), mas não está tratando o caso onde artistas pode ser nulo. Adicione um else para exibir uma mensagem de erro amigável.
<h3>Artistas</h3>
@if(artistas is not null)
{
    foreach (var artista in artistas)
    {
        <p>@artista.Nome</p>
    }
}
else
{
    <p>Não foi possível carregar a lista de artistas.</p>
}
  1. Verifique o arquivo Imports.razor:

    • Certifique-se de que todas as dependências e namespaces necessários estão sendo importados corretamente.
  2. Console do Navegador:

    • Abra o console do navegador (F12) e veja se há alguma mensagem de erro adicional que possa ajudar a identificar o problema.

Seguindo essas dicas, você deve conseguir identificar e corrigir o problema. Espero ter ajudado e bons estudos!

De um F12 e veja se é erro por bloqueio dos Cors. Se for...

Adicione o seguinte codigo no Program.cs da sua ScreenSound.API

Insira aqui a descrição dessa imagem para ajudar na acessibilidadebuilder.Services.AddCors(); //.... app.UseCors(x => x.AllowAnyMethod().AllowAnyHeader().SetIsOriginAllowed(origin => true).AllowCredentials());

vou abrir uma nova duvida.

Olá bom dia, segui abaixo imagem da possivel solução:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

no appsetting.json, na pasta wwwroot, do projeto Blazor, tem ser passado a url e a porta onde a API esta executando, eu me confundir a acabei colocando a *url *e a porta onde o Blazor esta sendo executado.

segui abaixo imagem Program.cs do projeto Blazor. Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Segui abaixo appsettings.json na pasta wwwroot do projeto Blazor Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Boa tarde Mateus,

Perfeito, obrigado por compartilhar conosco.