Web API 2返回空响应正文

时间:2018-10-25 09:04:42

标签: c# angular

我有一个ApiController,它从异步调用返回字符串列表。 如果我使用Postman打后端,则可以看到带有字符串列表的正确响应正文,但是当我从Angular App调用它时,在浏览器的“网络”标签中看到一个空的响应正文。

Web API操作

[HttpGet]
[Route("overview/codes")]
public async Task<IHttpActionResult> GetCodes()
{
   try
   {
       var codes = await _service.GetCodesAsync();
       return Ok(codes);
   }
   catch (ArgumentNullException)
   {
       return NotFound();
   }
}

c#服务方法

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);
}

1 个答案:

答案 0 :(得分:0)

感谢您的帮助。

问题出在CORS和身份验证上。缺少一些配置,因此我可以命中端点,但是由于我的角度应用未注册,因此不会将其发送给响应正文。