我在UsersController上有delete方法:
public async Task<IHttpActionResult> DeleteUser(Guid id)
{
User user = await db.Users.FindAsync(id);
if (user == null)
{
return NotFound();
}
db.Users.Remove(user);
await db.SaveChangesAsync();
return Ok();
}
我已经通过安装软件包,在WebApiConfig中启用cors并将其添加到web.config中来启用了Cors:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
</customHeaders>
</httpProtocol>
</system.webServer>
我在前端使用Angular,并且在需要删除方法的地方提供服务:
public delete = (route: string) => {
return this.http.delete(this.createCompleteRoute(route, environment.urlAddress));
}
当我使用此功能拨打电话时,网址为:http://localhost:52474/api/Users/"some guid"
,但通话失败,表明未通过飞行前请求。我是否需要在配置中添加其他内容?
答案 0 :(得分:0)
我注释掉了web.config中的设置,并在控制器顶部添加了vlookup
,现在它可以正常工作了。