WebApi cors for runtime 4.0

前端 未结 5 1641
别跟我提以往
别跟我提以往 2021-01-21 23:36

I need WebApi Cors dll for web api project. I installed Web Api version for .net 4 framework, because I use VS 2010. I tried to install web api cors lib via nuget (Install-Packa

相关标签:
5条回答
  • 2021-01-22 00:09

    CORS is natively supported in Web API 2 only. However, you can write your own extensions. Take a look at this tutorial by Carlos Figueira. The tutorial not only applies to the RC version but also to final version 1.

    0 讨论(0)
  • 2021-01-22 00:19

    The CORS is supported in Web API 2 that needs .NET Framework 4.5 and visual studio/express 2014.

    It is not available for Web API 1

    0 讨论(0)
  • 2021-01-22 00:31

    You need to check EF version before inastalling above package if it is EF version 4.5 and above then it works otherwise it rollbacks below EF version 4.5

    And ** Access-Control-Allow-Origin ** problem is solved no need to do extra work

    and you can do it in VS 2013 web express

    using System.Web.Http.Cors;
    namespace WebApplication10
    {
        public static class WebApiConfig
        {
            public static void Register(HttpConfiguration config)
            {
                // Web API configuration and services
    
                var cors = new EnableCorsAttribute("*", "*", "*");
                config.EnableCors(cors);
                // Web API routes
                config.MapHttpAttributeRoutes();
    
                config.Routes.MapHttpRoute(
                    name: "DefaultApi",
                    routeTemplate: "api/{controller}/{id}",
                    defaults: new { id = RouteParameter.Optional }
                );
            }
        }
    }
    

    Hope this will help Thank you

    This is WebApiConfig.cs file

    var cors = new EnableCorsAttribute("*", "*", "*");
    config.EnableCors(cors);
    

    and using System.Web.Http.Cors;

    these are the changes you need to do. For Api Controller

    public class ValuesController : ApiController
    {
    
        // GET api/<controller>
        [HttpGet]
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }
    

    just add [HttpGet] attribute and all is set.

    0 讨论(0)
  • 2021-01-22 00:31

    For IIS 6 servers:

    To CORS-enable Microsoft IIS6, perform the following steps:

    • Open Internet Information Service (IIS) Manager
    • Right click the site you want to enable CORS for and go to Properties
    • Change to the HTTP Headers tab In the Custom HTTP headers section, click Add
    • Enter Access-Control-Allow-Origin as the header name
    • Enter * as the header value
    • Click Ok twice

    http://enable-cors.org/server_iis6.html

    0 讨论(0)
  • 2021-01-22 00:34

    For IIS7

    Merge this into the web.config file at the root of your application / site:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <system.webServer>
          <httpProtocol>
            <customHeaders>
              <add name="Access-Control-Allow-Origin" value="*" />
            </customHeaders>
          </httpProtocol>
        </system.webServer>
      </configuration>
    

    sourced from w3

    0 讨论(0)
提交回复
热议问题