ASP.NET CORE 8.0: CORS, USESTATICFILES и Azure App ServiceC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 ASP.NET CORE 8.0: CORS, USESTATICFILES и Azure App Service

Сообщение Anonymous »

У меня странная проблема с моей конфигурацией CORS. Я размещаю добавку Excel 365, который содержит формулу внутри моего приложения ASP.NET Core 8. Чтобы позволить клиенту загружать файлы, я использует app.usestaticfiles () для обнаружения папки, содержащей результат транспиляции плагина. Я должен указать политику CORS для использования при обслуживании статических файлов, я написал следующее расширение, которое будет использоваться в моем запуске: < /p>

Код: Выделить всё

public static class IApplicationBuilderExtensions
{
/// 
/// In order for this to work, it must be called BEFORE UseCors is called in the startup.
/// 
/// 
/// 
/// 
/// 
/// 
public static IApplicationBuilder UseStaticFilesWithCors(this IApplicationBuilder app, string policyName, StaticFileOptions staticFileOptions)
{
app.UseWhen(context => context.Request.Path.StartsWithSegments(staticFileOptions.RequestPath), builder =>
{
builder.Use(async (ctx, next) =>
{
// Apply CORS policy to the request
var corsService = ctx.RequestServices.GetRequiredService();
var corsPolicyProvider = ctx.RequestServices.GetRequiredService();

if (await corsPolicyProvider.GetPolicyAsync(ctx, policyName) is { } corsPolicy)
{
var result = corsService.EvaluatePolicy(ctx, corsPolicy);
corsService.ApplyResult(result, ctx.Response);
}

await next();
});
});
app.UseStaticFiles(staticFileOptions);
return app;
}
}
< /code>
Пример использования: < /p>
    app.UseStaticFilesWithCors("API", new StaticFileOptions
{
FileProvider = new Microsoft.Extensions.FileProviders.PhysicalFileProvider(webroot),
RequestPath = new PathString("/o365addon")
});
Теперь, когда этот код работает локально (IIS или Kestrel), он работает безупречно: я получаю заголовок CORS All-All-Origin для всех запросов, которые имеют заголовок «происхождение» и начинаются с моей базовой папки («/o365addon»). Никогда не присутствует. Любое предложение приветствуется.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... pp-service
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • ASP.NET CORE 8.0: CORS, USESTATICFILES и Azure App Service
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Должен быть одним из: service.start_sticky_compatibility, service.start_sticky, service.start_not_sticky, service.start_
    Гость » » в форуме JAVA
    0 Ответы
    24 Просмотры
    Последнее сообщение Гость
  • Должен быть одним из: service.start_sticky_compatibility, service.start_sticky, service.start_not_sticky, service.start_
    Гость » » в форуме Android
    0 Ответы
    28 Просмотры
    Последнее сообщение Гость
  • В чем разница между UseStaticFiles, UseSpaStaticFiles и UseSpa в ASP.NET Core 2.1?
    Anonymous » » в форуме C#
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Java Service Wrapper во время запуска JAR Application FOM Service Service
    Anonymous » » в форуме JAVA
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»