相关疑难解决方法(0)

同一域上的CORS错误?

我现在正遇到一个奇怪的CORS问题.

这是错误消息:

XMLHttpRequest cannot load http://localhost:8666/routeREST/select?q=[...] 
Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin
Run Code Online (Sandbox Code Playgroud)

两台服务器:

  • localhost:8666/routeREST /:这是一个简单的Python Bottle服务器.
  • localhost:8080 /:Python simpleHTTPserver我在哪里运行Javascript应用程序.这个应用程序正在上面的服务器上执行Ajax请求.

有什么想法可能是什么问题?

编辑:

而且...端口是问题所在.谢谢你的回答:)

如果有人也使用Python瓶服务器,你可以按照这篇文章给出的答案来解决CORS问题: Bottle Py:为jQuery AJAX请求启用CORS

javascript python ajax cross-domain cors

67
推荐指数
2
解决办法
6万
查看次数

CORS 策略和 .NET Core 3.1 的问题

我不确定我错过了什么,但似乎无法让我的 CORS 策略与 .NET Core 3.1 和 Angular 8 客户端一起使用。

Startup.cs

        public void ConfigureServices(IServiceCollection services)
        {
            // ...

            // Add CORS policy
            services.AddCors(options =>
            {
                options.AddPolicy("foo",
                builder =>
                {
                    // Not a permanent solution, but just trying to isolate the problem
                    builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
                });
            });

            services.AddControllers();
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseHttpsRedirection();

            // Use the CORS policy
            app.UseCors("foo");

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });
        }
Run Code Online (Sandbox Code Playgroud)

错误消息客户端:

Access to XMLHttpRequest at 'https://localhost:8082/api/auth/' …
Run Code Online (Sandbox Code Playgroud)

cors .net-core angular

43
推荐指数
3
解决办法
3万
查看次数

ASP.NET 5/Core/vNext即使允许几乎所有内容,CORS也无法正常工作

我有一个ASP.NET 5 Web API(好吧,现在是MVC)后端,我正在使用我的JS应用程序中的axios库.

我在MVC中的CORS配置如下:

public void ConfigureServices(IServiceCollection services)
{
      services.AddMvc();
      services.AddCors();
} 


public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{ 
      app.UseCors(builder => {
          builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
      });
}
Run Code Online (Sandbox Code Playgroud)

换句话说,我应该允许每一个请求.但是,虽然这个固定的预检请求仍然被拒绝(我可以看到它在服务器上执行,但是响应中没有标题,因此导致客户端错误).

有没有人有任何想法为什么这不起作用?

这些是MVC api返回的标头:

  • 对于OPTIONS预检(这一次通过): 选项回应
  • 对于实际的POST请求(这个不通过): POST响应

cors asp.net-core

12
推荐指数
6
解决办法
1万
查看次数