为什么我在 .NET 4.5.2 中面临 CORS 策略问题,而我在 WebAPIConfig 类中对其进行了配置?

why am i facing the CORS Policy problem in .net 4.5.2 while i configered it in my WebAPIConfig class?

提问人:mahmoud emad 提问时间:9/14/2023 最后编辑:Timothy G.mahmoud emad 更新时间:9/14/2023 访问量:59

问:

我有一个项目(WebAPI .Net 4.5.2),当我创建 API 并尝试从 ajax 调用和 flutter 应用程序访问它时,我遇到了 CORS 策略问题,然后我尝试了我找到的所有解决方案,但没有任何效果

这是我的WebAPIConfig

public static class WebApiConfig
        {
            public static void Register(HttpConfiguration config)
            {

            config.EnableCors();

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

            // Web API routes
            config.MapHttpAttributeRoutes();

                GlobalConfiguration.Configuration.Formatters.Clear();
                GlobalConfiguration.Configuration.Formatters.Add(new   System.Net.Http.Formatting.JsonMediaTypeFormatter());
                config.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
                config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new System.Net.Http.Headers.MediaTypeHeaderValue("multipart/form-data"));
                GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;

                config.Routes.MapHttpRoute(
                    name: "DefaultApi",
                    routeTemplate: "api/{controller}/{action}",
                    defaults: new { id = RouteParameter.Optional }
                );
            }
        }

我尝试从 ajax(标头)发送“Access-Control-Allow-Origin”: “*”,但仍然面临同样的问题,出现错误“从源 (https://localhost:44380) 访问 ”XMLHttpRequest at (http://192.68.1.46/EmpPenalitiesAPI/api/FollowUpImage/GetPenalities) 已被 CORS 策略阻止”

我还试图将这一行放在我的控制器及其方法
上方 [EnableCors(origins: “”, headers: “”, methods: “*”)]

但没有任何改变。所以如果有人帮助我,我会很感激。

C# asp.net ajax asp.net-web-api cors

评论

0赞 Bob Meijwaard 9/14/2023
可能是 http 到 https。
0赞 mahmoud emad 9/17/2023
是的,我想是的,谢谢。有什么解决方案吗?

答: 暂无答案