我有一个如下所示的Web API控制器:
[HttpPost] public IHttpActionResult Test() { return Ok(); }
这是正确的语法,但是当我尝试从Angular 2的服务中调用它时,出现错误消息:“ json解析错误语法错误输入意外结束”。要解决此问题,我必须在ActionResult中输入一个值,例如
return Ok(1)
我是否缺少某些配置?我的Angular 2服务电话如下所示:
return this.http.post(API/Controller/Test).map(res => res.json());
我猜想,当您收到一个空响应(没有有效负载)时,您无需调用该json方法。在后台,XHR响应是未定义的,将JSON.parse(undefined)被调用并引发错误。
json
JSON.parse(undefined)
您可以跳过map接线员的电话:
map
return this.http.post(API/Controller/Test)/*.map(res => res.json())*/;