у меня есть веб-приложение с многоуровневым (бизнес-уровень, уровень доступа к данным, уровень обслуживания и уровень пользовательского интерфейса)
я называю уровень обслуживания (веб-интерфейс) на страницах Ui Layer Razor (с использованием JQuery и Ajax)
<button id="btn">ddd</button>
script type="text/javascript">
$(document).ready(function () {
var filmtable = $("#DataTableHtmlId");
$('#btn').click(function() {
$.ajax({
type: 'GET',
dataType: "json",
contentType: 'application/json; charset=utf-8',
url: 'https://localhost:11111/api/film/1',
withCredentials: true,
AccessControlAllowCredentials: true,
success: function(data) {
alert(data);
},
error: function(data) {
alert("err");
}
});
});
} );
</script>
когда контроллер вызовов, который запускает представление с последним вызовом ajax
Появляется ошибка
Запрос перекрестного происхождения заблокирован: Та же политика происхождения запрещает чтение удаленного ресурса на https://localhost:11111/api/film/1. (причина: отсутствует заголовок CORS 'Access-Control-Allow-Origin'). [Узнать больше]
Запрос перекрестного источника заблокирован:Та же политика происхождения запрещает чтение удаленного ресурса на https://localhost:11111/api/film/1. (причина: запрос CORS не был выполнен).
После поиска я нашел много решений как Регистрация Cors В ConfigureServices как
//Cors policy is added to controllers via [EnableCors("CorsPolicy")]
//or .UseCors("CorsPolicy") globally
services.AddCors(options =>
{
options.AddPolicy("CorsPolicy",
builder => builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
и Применить CORS В Настройка как
//Apply CORS.
app.UseCors("CorsPolicy");
app.UseHttpsRedirection();
app.UseAuthentication();
app.UseMvc();
Но также появляется сообщение об ошибке Любая помощь?