gpt4 book ai didi

c# - 无法评估 Blazor Webassembly API 调用子项

转载 作者:行者123 更新时间:2023-12-03 23:05:25 25 4
gpt4 key购买 nike

我正在尝试使用我的新 Blazor Webassembly 应用程序调用现有的 rest API,但是当我进行调用时,我总是收到错误 无法评估 child . API 遇到断点,当我单步执行时,它成功返回数据,我也可以查看是否在 postman 中调用它,但是 Blazor 调用失败。我认为这可能是类不匹配的问题,但是 TeamModel 的类结构是相同的,因为它现在是共享资源。我是 Blazor 的新手,我确定我遗漏了一些东西,但可以提供一些指导或帮助。

private async Task FetchTeamData()
{
try
{
List<TeamModel> teams;
teams = await Http.GetFromJsonAsync<List<TeamModel>>("http://localhost:50663/api/team");
}
catch (Exception ex)
{
//Always blowing up with Children could not be evaluated here.
}
}
[HttpGet]
public IActionResult GetAllTeams()
{
List<TeamModel> teams = _teamRepository.GetAllTeams();

return Ok(teams);
}
编辑:
好吧,我已经将范围缩小到项目读取 API 的方式有问题。我可以很好地调用其他托管 API。我不确定是因为它的 localhost 还是其他一些问题,但是没有一个 localhost API 方法会正确调用我总是从它得到相同的响应。

最佳答案

我刚刚遇到了同样的问题,这是一个 CORS 问题。只需在您的 API 服务器的 startup.cs 中添加类似这样的内容

app.UseCors(policy => 
policy.WithOrigins("http://localhost:5000", "https://localhost:5001")
.AllowAnyMethod()
.WithHeaders(HeaderNames.ContentType));
来源: https://github.com/dotnet/AspNetCore.Docs/blob/master/aspnetcore/blazor/common/samples/3.x/BlazorWebAssemblySample/Pages/CallWebAPI.razor

关于c# - 无法评估 Blazor Webassembly API 调用子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63002320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com