c# - 启用跨域 ASP.net Web API

标签 c# asp.net asp.net-mvc asp.net-web-api

我有 Microsoft Visual Studio Express 2013 for Web,版本 12.0.30501.00 Update 2。我有一个包含 2 个项目的解决方案,一个是 Web API,第二个是用于 View 的 MVC 项目。我创建了一个返回 httpresponsemessage 的简单 web api,我可以进入 fiddler,我将看到 json 响应。然而,在我的第二个项目中,当我尝试通过 ajax 调用时,我收到了一个跨域错误。

我尝试遵循的解决方案是 http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api .但是,当在控制台管理器中安装 Install-Package Microsoft.AspNet.WebApi.Cors -pre -project WebService 时,我收到了一个错误,所以我改用了这一行。 Install-Package Microsoft.AspNet.WebApi.Cors 然后我尝试下一步,即 config.EnableCors(); 它的状态

'System.Web.Http.HttpConfiguration' does not contain a definition for 'EnableCors' and no extension method 'EnableCors' accepting a first argument of type 'System.Web.Http.HttpConfiguration' could be found (are you missing a using directive or an assembly reference?)

我不确定之后要做什么,我也尝试添加 using System.Web.Http.Cors; 但声明命名空间不存在。这个 visual studio 是大约 3 周前下载的,我觉得这个功能应该不难安装,因为它完全受支持,我是否遗漏了什么?

最佳答案

你应该安装一个 Nuget 包 Microsoft.AspNet.WebApi.Cors

从 visual studio 的菜单中,转到 Management Packages,然后输入包的名称

注意:
要从 Package Manager Console 安装,请使用 Install-Package Microsoft.AspNet.WebApi.Cors

关于c# - 启用跨域 ASP.net Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23746034/

相关文章:

c# - Entity Framework 将子对象添加到数据库

javascript - 启用/禁用 asp :dropdownlist using jquery not working

asp.net - 基本的 Mono 安装不起作用

c# - 如何在 ASP.Net 中转储响应 header

asp.net-mvc - 修复 ASP.Net MVC 中的跨站点脚本(反射(reflect))

c# - 数据表未被填充

c# - 从 Windows 服务登录到另一台机器

c# - 是否可以设置 DataGrid (SWF) 以调整到最佳大小?

asp.net - ASP .NET MVC VirtualPathProvider

asp.net - 部署时抛出 SecurityException