Ошибка Access-Control-Allow-Origin, даже когда я добавил app.useCors (Angular, c # .net core API) - PullRequest
0 голосов
/ 03 июня 2018

По-прежнему появляется ошибка Access-Control-Allow-Origin даже после того, как я добавил useCors в свой класс запуска.Я также использую angular 5. Я использовал эту ошибку, когда запускал свой проект, но я исправил ее, добавив cors в мой запуск, но теперь я получаю ее, когда пытаюсь вызвать метод post api из моего углового проекта.Error that I get in chrome

мой код startup.cs:

public class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;

    }

    public IConfiguration Configuration { get; }

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors();

        services.AddMvc();

    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseCors(builder => builder
            .AllowAnyOrigin()
            .AllowAnyHeader()
            .AllowAnyMethod()
            .AllowCredentials());

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

        app.UseMvc();

    }

}

1 Ответ

0 голосов
/ 03 июня 2018

Вы можете использовать прокси в своем клиенте и изменить происхождение клиента на любое другое.

Преимущества этого решения:

  1. Вам не нужно определять CORS в своем бэкэнде (повышение безопасности)
  2. Вам не нужно беспокоиться о своем клиенте, так как вы просто запускаете свой проект через npm start , как только вы захотите выпустить приложение, вы можете запустить ng build команда и прокси будут игнорироваться из ваших настроек.

Для использования прокси

  1. отредактируйте "start" вашего package.json, чтобы посмотреть ниже

    "start": "ng serve --proxy-config proxy.conf.json",

  2. создайте новый файл с именем proxy.conf.json в корне проекта и внутри него определите свои прокси, как показано ниже

    {
      "/api/*": {
        "target": "http://localhost:56492",
        "secure": "false"
      }
    }
    
  3. Важно то, что выиспользуйте npm start вместо ng serve

Теперь в вашем файле service.ts отправляйте / получайте URL-адреса запросов вместо localhost: 56492 / ... просто введите / api / Film,

Подробнее читайте здесь: Настройка прокси угловая 2 кли

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