Когда я вызываю свой основной API asp.net с помощью HTTP-URL, запрос никогда не достигает моего приложения, я добавил промежуточное программное обеспечение для проверки этого, и запрос никогда не попадает в контекст.Хотя я настроил перенаправление https, как я покажу ниже, Http-запрос не перенаправляет на https.Но когда я использую HTTPS URL, запрос теперь попадает в мое приложение.Я хочу иметь возможность вызывать мой API из URL Http, после чего он перенаправляется на https.
Я перепробовал все, что видел в Интернете.Я попытался включить перенаправление HTTPS, но ничего не получалось.Вот как выглядит перенаправление https:
public void Configure(IApplicationBuilder app, IHostingEnvironment env) {
if (env.IsDevelopment()) {
app.UseDeveloperExceptionPage();
}
else {
app.ConfigureExceptionMiddleware();
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseMvc();
}
В методе configureServices:
services.AddHttpsRedirection(options => {
options.RedirectStatusCode = StatusCodes.Status308PermanentRedirect;
options.HttpsPort = 44382;
});
launchSettings.json
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:53471",
"sslPort": 44382
}
},
Код не работаети не включает перенаправление.Это только позволяет мне получить доступ к моему приложению через HTTPS, но перенаправление не сделано.Может кто-нибудь сказать мне, как я могу позвонить по Http перенаправить на https?