내가 정확히 기사로 내가 설정이황조롱이 HTTPS POST 결과 생산 (ASP.NET 코어 2.X)
// Requires using Microsoft.AspNetCore.Mvc;
public void ConfigureServices(IServiceCollection services)
{
services.Configure<MvcOptions>(options =>
{
options.Filters.Add(new RequireHttpsAttribute());
});
을 제안이 문서 https://docs.microsoft.com/en-us/aspnet/core/security/enforcing-ssl
을 따라 할 때 및
// Requires using Microsoft.AspNetCore.Rewrite;
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
var options = new RewriteOptions()
.AddRedirectToHttps();
app.UseRewriter(options);
이것은 모든 브라우저에서 GET 요청을 보낼 때 잘 작동하는 것 같습니다. 그러나 POST 요청에 도달하면 그 원인을 알려주지 않고 400 상태 코드를 얻습니다. 이상하게도 DEBUG 모드에서는이 문제가 발생하지 않습니다.
Edge 또는 IE를 사용하는 경우이 오류가 발생하지 않습니다. Chrome 또는 POSTMAN을 사용하면 400 개의 상태 코드가 표시됩니다.
이상하게도 POSTMAN을 사용하고 POST 요청이 HTTPS 대신 HTTP를 사용하도록 변경하면 HTTPS 대신 200 (OK) 응답이 표시됩니다. 그래서, 위의 기사에 문제가 있다고 생각하고 있지만 해결책은별로 없습니다.
누구나이 문제에 대한 경험이나 통찰력이 있습니까?