带有JSONP的ASP.NET Core MVC

Kar*_*nda 5 jsonp asp.net-core-mvc kestrel-http-server asp.net-core

我想启用现有的MVC控制器(来自ASP.NET Core/Kestrel服务器)将消息包装为JSONP,以便可以从浏览器跨域访问它们.我有什么选择?

Tse*_*eng 5

JSONP已经过时了,因为大多数框架和服务器都支持CORS,这使JSONP变得过时了(它不能与GET请求一起使用)。

// ConfigureServices
        services.AddCors(options =>
        {
            options.AddPolicy("AnyOrigin", builder =>
            {
                builder
                    .AllowAnyOrigin()
                    .AllowAnyMethod();
            });
        });

// Configure
app.UseCors("AnyOrigin");
Run Code Online (Sandbox Code Playgroud)

基本上,这将允许从任何域进行ajax调用。如果您需要对域和操作进行更细粒度的控制,请查看官方文档

  • 这不应该是答案。它没有回答问题,它说您应该做其他可能有帮助的事情,但不能解决问题。 (2认同)