Получение ответа типа cors на ядре web api .net - PullRequest
0 голосов
/ 22 мая 2019

Я просто пытаюсь вернуть URL-адрес клиенту, я уже выполнил всю настройку политики cors, но единственное возвращение, которое я получаю, имеет тип cors, без какого-либо сигнала URL-адреса, который я хочу вернуть, предварительный запрос работаетнормально и сам запрос, возвращение моего API это моя проблема.

это мой startup.cs

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

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {

            services.AddTransient<ITokenManager, TokenManager>();
            services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            services.AddSingleton<IAccountService, AccountService>();
            services.AddSingleton<ITableauService, TableauService>();


            services.AddCors(options =>
            {
                options.AddPolicy("AllowAll",
                    builder =>
                    {
                        builder
                        .AllowAnyOrigin()
                        .AllowAnyMethod()
                        .AllowAnyHeader()
                        .Build();

                    });
            });

            services.Configure<MvcOptions>(options =>
            {
                options.Filters.Add(new CorsAuthorizationFilterFactory("AllowAll"));
            });

            services.AddMvc();

        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {

            app.UseAuthentication();
            app.UseCors("AllowAll");
            app.UseMvc();
            app.UseStaticFiles();
            app.UseCookiePolicy();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                app.UseHsts();
            }
        }
    }

получить запрос API от клиента

  fetch('https://baseurl?folder=AcompanhamentoComparativoLocaliza&view=DashEmails'
            , {

                headers: new Headers({
                    'authorization': 'AuthToken',
                    'Content-Type':'application/json',

                })
            })
                .then(response => {
                    console.log('teste',response)


                }
                )
                .catch(error => console.error(error))

это вывод политики cors, как вы, ребята, видите, что они выполнены успешно

это возврат в моем контроллере

итеперь сеть в моем клиенте

предполетные сетевые заголовки и статус

Сам запрос

ответ от API

Заранее спасибо, я прошу любую помощь.

1 Ответ

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

Тип ответа cors означает

Ответ был получен на действительный запрос перекрестного происхождения. Некоторые заголовки и тело могут быть доступны.

Так что просто получите возвращенные данные, используя:

.then(response => {
  response.json().then((data) => {
      console.log(data);
    })
  }
)

Кроме того, если вы хотите вернуть URL, вы должны добавить двойные кавычки, например:

return Content("\"https://localhost:8080\"");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...