Я включил CORS в своем приложении ASP.NET/Angular, используя AddCors и EnableCors в контроллерах.Мое приложение связывается со страницами AD B2C.После сборки у меня появляется эта ошибка в консоли:
Доступ к XMLHttpRequest по адресу https://XXX.b2clogin.com/ (перенаправлен из 'https://XXX.azurewebsites.net/User/Info') из источника' https://XXX.azurewebsites.net' имеетбыл заблокирован политикой CORS: на запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».
Startup.cs:
services.AddCors(options =>
{
options.AddPolicy("CorsPolicy",
builder => builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
Контроллер:
[EnableCors("CorsPolicy")]
[Authorize]
public class UserEditController : Controller
Я также включил CORS в Azure, поставив: Allowed Origins - *
.
ОБНОВЛЕНИЕ:
[Route("User/Info")]
[HttpGet]
public async Task<IActionResult> LoggedInUserInfo()
{
if (User.Identity.IsAuthenticated)
{
var user = ((ClaimsIdentity)User.Identity).FindFirst(ClaimTypes.NameIdentifier).Value;
var viewmodel = await userService.GetUserByObjectId(user);
return Json(new { loggedIn = "true", user = viewmodel });
}
return Json(new { loggedIn = "false" });
}