我有一个ApiController,它从异步调用返回字符串列表。 如果我使用Postman打后端,则可以看到带有字符串列表的正确响应正文,但是当我从Angular App调用它时,在浏览器的“网络”标签中看到一个空的响应正文。
[HttpGet]
[Route("overview/codes")]
public async Task<IHttpActionResult> GetCodes()
{
try
{
var codes = await _service.GetCodesAsync();
return Ok(codes);
}
catch (ArgumentNullException)
{
return NotFound();
}
}
public async Task<IList<string>> GetCodesAsync()
{
using (var context = await _dataContextFactory.Create())
{
return await context.Tracking.Select(tracking => tracking.Code).ToListAsync();
}
}
这是服务中的方法,URL正确,原因是我可以看到请求到达了后端。
getCodes(): Observable<String[]> {
return this.http.get<String[]>("THE_URL");
}
以及调用服务的代码部分:
codes : String[];
ngOnInit() {
this.getCodes();
}
getCodes(): void {
this.service.getCodes().subscribe(codes => this.codes = codes);
}
答案 0 :(得分:0)
感谢您的帮助。
问题出在CORS和身份验证上。缺少一些配置,因此我可以命中端点,但是由于我的角度应用未注册,因此不会将其发送给响应正文。