在Blazor中重定向到HTTPS

时间:2018-10-08 07:25:32

标签: asp.net-core blazor

我有一个很棒的应用程序。 我将其托管在服务器上,并可以通过https访问。 但是当我重定向(在一个控制器中)时,发生异常。

Startap.cs

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseResponseCompression();

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseHttpsRedirection();
        app.UseMvc(routes =>
        {
            routes.MapRoute(name: "default", template: "{controller}/{action}/{id?}");
        });

        app.Map("/schedule", subdirApp =>
        {
            subdirApp.UseBlazor<Client.Startup>();
        });
    }

控制器中的方法

[HttpGet]
[Route("***")]
public IActionResult Return()
{
   FileStream fs = new FileStream(_filePath, FileMode.Open);
   System.Runtime.Serialization.Formatters.Binary.BinaryFormatter formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
   List<ScheduleEntity> _list = (List<ScheduleEntity>)formatter.Deserialize(fs);
   foreach (var x in _list)
       Schedules.Add(x);
   fs.Close();
   return Redirect("~//schedule");
}

例外

enter image description here

请帮帮我

1 个答案:

答案 0 :(得分:0)

这些API响应可能会产生误导。没有看到有关端点配置的其余代码,我怀疑这可能是API的CORS问题。

尝试将以下代码添加到API的public void Configure(IApplicationBuilder app, IHostingEnvironment env)类的Startup.cs方法中:

        app.UseCors(opts => opts
            .AllowAnyOrigin()
            .AllowAnyMethod()
            .AllowAnyHeader()
            .AllowCredentials()
        );

获取响应可能是由于请求预检被拒绝了。

话虽如此,第一条异常消息是您正在尝试加载不安全的内容,因此我还要检查Blazor前端应用程序的配置,以查看API客户端正在请求什么并确保API端点证书是有效吗?