Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:csharp:dotnetcore:web_api:cross-origin

< .Web API

Cross-origin kérés

Engedélyezés

A Program.cs fájlban vegyük fel a Cors beállításokhoz szükséges sorokat:

Program.cs
//...
var origin = "*";
builder.Services.AddCors(options => {
    options.AddPolicy(name: origin,
    policy => {
        policy
        .AllowAnyMethod()
        .AllowAnyHeader()
        .WithOrigins("http://localhost:4200");
    });
});
 
//...
 
app.UseCors(origin);

Engedélyeztük bármilyen metódus és fejrész használatát, és elérést a localhost:4200 portról, ami jellemzően Angular alkalmazás. Ha más szerverről kell elérni a Backend programunkat, akkor javítsuk.

Teljes Program.cs

Program.cs
using Microsoft.EntityFrameworkCore;
using jarmu;
 
var builder = WebApplication.CreateBuilder(args);
 
// Add services to the container.
 
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
 
//Adatbázis
builder.Services.AddDbContext<DataService>(options => {
    var connectionString = builder.Configuration.GetConnectionString("Mariadb");
    options.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString));
});
 
var origin = "*";
builder.Services.AddCors(options => {
    options.AddPolicy(name: origin,
    policy => {
        policy
        .AllowAnyMethod()
        .AllowAnyHeader()
        .WithOrigins("http://localhost:4200");
    });
});
 
 
var app = builder.Build();
 
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}
 
app.UseHttpsRedirection();
 
app.UseCors(origin);
 
app.UseAuthorization();
 
app.MapControllers();
 
app.Run();

Linkek

oktatas/programozas/csharp/dotnetcore/web_api/cross-origin.txt · Utolsó módosítás: 2024/03/06 04:23 szerkesztette: admin