Я не могу использовать API AJAX Call, но вызов почтальона в порядке - PullRequest
0 голосов
/ 04 мая 2019

Я не могу использовать API вызова ajax, но API вызова почтальона в порядке.Я разрабатываю веб-API на .net core 2.2 и разрабатываю asp.net core MVC.Затем я использую ajax-вызов к URL-адресу API "https://localhost:44349" Произошла ошибка на рисунке 1.

API: EmployeeController

[HttpPost("CheckAuth")]
public IActionResult checkAuth(EmployeeLoginRequest req)
    {
        // logic
        return Ok(JsonConvert.SerializeObject(employeeLoginResponse));
    }

API: Запуск

public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors();
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
        }

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                // 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.UseCors(
                options => options.WithOrigins("https://localhost:44320").AllowAnyMethod()
            );
            app.UseHttpsRedirection();
            app.UseMvc();
        }

Веб-приложение: Index.cshtml

var data = {
                "username": $.trim($("#inputUsername").val()),
                "password": $.trim($("#inputPassword").val())
            };

            $.ajax({
                url: "https://localhost:44349/Employee/CheckAuth",
                type: "POST",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: data,
                success: function (data, textStatus, xhr) {
                    console.log(data);
                },
                error: function (xhr, textStatus, errorThrown) {
                    console.log(xhr);
                    console.log(textStatus);
                    console.log(errorThrown);
                }
            });

Как мне это исправить?

Замечание URL-адрес API: https://localhost:44349 URL-адрес веб-сайта: https://localhost:44320

Figure 1

Ответы [ 2 ]

0 голосов
/ 04 мая 2019

Попробуйте изменить на это:

app.UseCors(
    options => options.WithOrigins("https://localhost:44349").AllowAnyMethod()
);
0 голосов
/ 04 мая 2019

Вам нужно включить CORS для решения этой проблемы, Пожалуйста, следуйте ниже шагов: https://www.c -sharpcorner.com / статьи / включения-CORS-в-Asp-нетто-ядро-апи-приложение /

Если вы уже включили его, пожалуйста, проверьте ниже URL и попробуйте эти шаги. Отсутствует токен 'access-control-allow-headers' в заголовке CORS 'Access-Control-Allow-Headers' из канала предварительной проверки CORS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...